본문 바로가기
딥러닝실무응용/딥러닝

[딥러닝] 넘파이(Numpy) 배열 실습

by udeserveit1 2024. 8. 16.

코랩 https://colab.google/

 

 

행렬의 덧셈과 뺄셈 

 

 

 

대괄호 두 개는 차원을 나타냄

대괄호 바깥쪽이 행 안쪽 대괄호는 열

 

 

 

표에서 열은 axis = 0, 행은 axis = 1

3d는 가로세로 axis =0, axis =1 뒷면 axis = 2

 

 

 

행렬의 곱

행렬의 곱은 내적의 조합 

행렬의 곱(1)

 

같은 위치의 인덱스끼리의 곱

 

 

 

행렬의 곱 (2)

 

 

 

 

행렬의 전치

A.T로 A의 전치행렬을 구함

 

 

행렬의 크기

 

- ndarray 변수명.shape 사용

- 행렬 크기는 튜플형으로 반환(소괄호, 수정 안됨)

배열의 크기를 알려준다

 

 

 

 

 

 

 

 

넘파이 배열의 형상

 

넘파이의 1차원,2차원,3차원 배열의 축과 형상(shape)

- shape(4,3,2) : 3차원 배열 내부의 각 축이 가지는 최대 원소의 개수

- 1d만 유일하게 가로가 axis 0 

- axis 가 증가하는 방향으로 간다. 

- 튜플 자료형에서 원소가 하나이면 쉼표를 찍어줘야함 - 쉼표가 없으면 단순한 연산자 

   (3, ) 은 튜플형

    (3) 은 정수

 

행렬의 요소 참조 

- 변수명[row 인덱스, column 인덱스]

-  인덱스는 0부터 시작

x[ ] 의 의미는 x배열에서 대괄호 안에 있는 원소를 뽑겠다

행과 열의 시작은 0 x[1, ] 는 2행, x[,2]는 3열

행렬의 요소 수정

 

- =은 그 값으로 수정한다

- 변수명[row 인덱스, column 인덱스] = 수치

행렬의 형상 변경

- 변수명.reshape(n,m)를 사용

 

배열 합치기 (나중 나오면 설명)  중요

- np.concatenate 함수 사용

- 두 다차원 배열을 설정한 축에 따라 결합하고 이를 반환하는 함수 

 

- axis = 0 의 기본값은 세로로 내려감 즉 행 추가 

 

- a와 b를 전치행렬한 값을 가로(axis =1)에 추가

 

축이 없다.a랑 b를 합친다.

- 축을 무시하고 나열한다

 

1D 벡터를 가로 벡터인  1 2,3,4,5,6 은 즉, 1x6행렬이다