본문 바로가기
자기계발/파이썬기초

[파이썬 기초] 파알못을 위한 핵심 정리 2탄 (벡터와 행렬의 연산)

by 딩동동 2022. 11. 23.
파이썬을 1도 모르는 이를 위한 핵심 정리 2탄
  • 벡터의 연산은 각각의 벡터에 포함된 원소의 개수가 다르면 연산이 되지 않는다.
  • 벡터의 곱은 * 연산자 제곱은 ** 와 np.power를 사용하여 계산할 수 있다.
  • 벡터 A/B 둘 중 하나의 원소가 1개라면 R과 동일하게 계산이 된다.
  • 벡터의 항목 삭제는 np.delete를 사용한다.
  • 벡터의 추가/삽입은 np.append와 np.insert를 사용한다.
  • append는 마지막 위치에 원소를 추가하며 insert는 삽입 위치를 지정할 수 있다.
  • 행렬의 곱은 numpy.matmul를 사용하여 계산 할 수 있다.
  • 행렬의 항목 삭제/추가/삽입은 벡터와 동일하다.
  • 행렬에서 numpy.vstack (행추가) numpy.hstack (열추가) 사용할 수 있다.

[2] 벡터와 행렬 연산

 

● 파이썬에서는 기본 기능으로 행렬과 벡터를 사용할 수 있지만

관련 연산을 쉽게 하기 위해 numpy 패키지를 사용합니다.

 

import numpy as np

 

벡터의 연산

파이썬은 R과 다르게

각각의 벡터에 포함된 원소의 개수가 다르면 연산이 되지 않습니다.

a=np.array([1,2,3,4])

b=np.array([5,6,7])

파이썬 실행화면

 

곱셈은 * 연산자를 사용하며, 제곱은 ** 연산자를 사용합니다.

추가로 np.power(a,2) 를 사용하여 제곱 계산을 할 수 있습니다.

파이썬 실행화면

 

만약 아래와 같이 a 와 b 둘 중 하나의 벡터가

원소 개수가 하나인 경우에는 어떻게 계산이 될까요?

a=np.array([1,2,3,4])

b=np.array([5])

a+b=?

파이썬 실행화면

 

행렬의 곱

행렬의 곱은 numpy 패키지의 matmul 함수를 사용하여 계산합니다.

numpy.matmul(A, B)

파이썬 실행화면

 

벡터의 항목 추가 및 삭제

삭제 numpy.delete(a,index,axis)
추가 numpy.append(a,obj,axis)
삽입 numpy.insert(a,index,obj,axis)

a : 삭제, 추가 또는 삽입 대상인 배열

index : 삭제 또는 추가할 위치를 지정

obj : 추가 또는 삽입할 개체 

axis : 행 또는 열을 알려주는 요소 (0=행, 1=열)

 

벡터의 항목 삭제(np.delete)

 

※ append와 insert의 차이점 ? 위치를 지정할 수 있는가 없는가!

append 함수는 마지막 위치에 원소를 추가해 주는 함수이며

insert 함수는 삽입할 위치를 지정할 수 있습니다. 

벡터의 항목 추가(np.append)

 

벡터의 항목 삽입(np.insert)

 

 행렬의 항목 추가 및 삭제

행렬의 삭제 (np.delete)

 

행렬의 추가 (np.append)

 

행렬의 삽입 (np.insert)

 

np.hstack : 수평 방향으로 행렬을 합치는 방법으로 을 추가할 수 있습니다.

np.vstack : 수직 방향으로 행렬을 합치는 방법으로 을 추가할 수 있습니다.

 

 

나도 할 수 있다 파이썬 !

댓글