Python +머신러닝
[Python] - Numpy 기초 정리 1
dev_SiWoo
2020. 8. 27. 00:10
Numpy Basic¶
Numerical Python의 줄임말인데 이는 C언어로 구현된 파이썬 라이브러리로써 고성능의 수치계산을 위해 제작되었다. Numpy는 벡터 및 행렬 연산에 있어서 매우 편리한 기능을 제공한다.
또한 이는 데이터분석을 할 때 사용되는 라이브러리인 pandas와 matplotlib의 기반으로 사용된다.
In [65]:
import numpy as np
In [66]:
arr = np.array([[1,2,3], [1,2,3]])
numpy에서는 기본적으로 array라는 단위로 데이터를 관리한다. array는 말 그대로 행렬 개념이며 위와 같이 Array를 선언 할 수 있다. 또한 아래 처럼 array을 선언할 때 데이터 타입을 설정해 줄 수 있다.
In [67]:
arr2 = np.array([[1,2,3],[1,2,3]], dtype = 'uint8')
arr2.dtype
Out[67]:
In [68]:
arr.dtype
Out[68]:
- astyp : data type을 변환 해줌
In [69]:
arr.astype('float32')
Out[69]:
- shape : array의 모양을 확인
In [70]:
arr.shape
Out[70]:
- ndim : 차원의 개수를 리턴
len(arr.shape) 으로 대체가능
In [71]:
print(arr.ndim)
print(len(arr.shape))
- Reshape : 기존 데이터는 유지하고 차원과 형상을 바꾸는데 사용하는 메소드
In [72]:
print(arr)
print(arr.shape)
arr3 = arr.reshape([6])
print(arr3)
print(arr3.shape)
In [73]:
arr4 = arr.reshape([3,2])
print(arr4)
print(arr4.shape)
- Reshape -1
- reshape(-1,n) : n개의 열로 reshape
- reshape(n,-1) : n개의 행으로 reshape
In [74]:
print('arr 원본 :\n',arr,'\n shape:',arr.shape,'\n\n')
arr5 = arr.reshape(-1)
print(arr5, arr5.shape)
print('\n\n****reshape(-1,n)****\n')
arr6 = arr.reshape(-1,1)
print(arr6, arr6.shape)
print('--------------------')
arr7 = arr.reshape(-1,2)
print(arr7, arr7.shape)
print('--------------------')
arr8 = arr.reshape(-1,3)
print(arr8, arr8.shape)
print('\n\n****reshape(n,-1)****\n')
arr9 = arr.reshape(1,-1)
print(arr9, arr9.shape)
print('--------------------')
arr10= arr.reshape(2,-1)
print(arr10, arr10.shape)
print('--------------------')
arr11= arr.reshape(3,-1)
print(arr11, arr11.shape)
In [ ]: