Python/초심자를 위한 빅데이터 분석 및 머신러닝 응용과정
[easyupclass] 초심자를 위한 빅데이터 분석 및 머신러닝 응용과정(파이썬) 18강 - numpy
김초송
2022. 10. 25. 23:02
numpy
- 행렬 연산하는 패키지
- ndarray : 한 가지 데이터 타입만 사용 가능 = 데이터들의 타입이 int, float, boolean, string 타입이 동일해야 한다
- shape : num, - 1차원 데이터의 데이터 개수
row, column - 2차원 데이터의 행, 열
- .reshape(행, 열) : array type으로 변형
- .dtype : array안에 데이터 타입 확인
데이터 수정
- array[행, 열] = 바꾸고 싶은 값
- array[행] = [행 값 전체]
array 브로드캐스팅
- 차원이 다른 연산을 동일한 차원으로 자동으로 변경시켜 연산을 가능하게 하는 것
# 리스트는 * 10은 데이터 10번 반복임
# array는 데이터 값에 연산
ary * 10
ary + 10
array 조건 선택
- 일종의 mask 기능
- 특정 조건에 맞는 값만 찾아낼 때
- arrayp[mask] : True 위치의 데이터만 뽑아내어 형태와 상관없이 값만 array로 출력
= 값 : 원하는 조건의 값만 변경
ary = np.array([[1,2,3],[0,0,0]])
ary[1] = [4,5,6]
idx = ary4 >= 5
idx
# 결과
# array([[False, False, False],
# [False, True, True]])
ary[idx]
# array([3, 4])
0 행렬, 1 행렬
- 0 행렬 생성 : np.zeros((행, 열))
- 1 행렬 생성 : np.ones((행, 열))
- ((차원, 행, 열))
- ((2, 2, 3)) : 2차원 2행 3열 생성
- 튜플로 행열 작성
- float 타입
- 차원값이 없으면 기본적으로 2차원 데이터
- 열 값이 없으면 1차원 데이터
행렬 데이터 타입 변경
- .astype('원하는 타입')
zero_ary = np.zeros((2,3))
zero_ary2 = zero_ary.astype('int')
zero_ary2, zero_ary2.dtype
범위값 array 생성
- .arange(시작, 끝, 간격)
- 리스트 = [i for i range()]와 똑같이 생성됨
arg = np.arange(1, 11, 2)
# array([1,3,5,7,9])