Patrick's 데이터 세상

Python 데이터 분석 - NumPy 본문

Programming/Python

Python 데이터 분석 - NumPy

patrick610 2020. 6. 24. 21:58
반응형
SMALL

NumPy


◉ NumPy(Numerical Python의 준말)

다차원 배열을 지원
Vector의 개념을 지원


◎ array 이용한 배열 생성

import numpy as np

x = np.array([1, 2, 3], dtype='f')   # list -> ndarray
print(x.dtype)   # 만들어진 배열의 자료형 추출
print(x)

결과

a = np.array([[1, 2, 3, 4], [5, 6, 7, 8]]) 
print (a)
print(a.shape)   # 배열 구조 확인

결과

a.shape=(4,2)
print(a)

결과

print(a.ndim) # 차원 확인

결과


◎ arange 이용한 배열 생성

x = np.arange(10,20,2)   # 시작에서 끝까지(10, 20) step(2) 만큼 array 형태로 반환
print (x)

결과

a = np.arange(10)   # [0, 1, 2, ..., 9]
# b = a[2:7]
b = a[2:7:2]        
print (b)

결과



◎ 인덱싱, 슬라이싱

a = np.array([[1,2,3],[3,4,5],[4,5,6]]) 
print (a, a.shape) 

결과

print (a[1:])   # 2행부터 끝까지

결과

print(a[1:,1:])   #2행 2열

결과

print(a[1, 1])   # 인덱싱

결과

① indexing - 1개
② sclicing - 범위



◎ 비교 연산자 인덱싱

x = np.array([[ 0, 1, 2],[ 3, 4, 5],[ 6, 7, 8],[ 9, 10, 11]]) 
print(x)
print(x > 5)      # 비교 연산자로 배열 값들과 비교 후 true, false 반환
print(x[x > 5])   # 연산의 true에 해당하는 값만 추출

결과

a = np.array([np.nan, 1,2,np.nan,3,4,5]) 
print(a)
print(np.isnan(a))
print(~np.isnan(a))
print(a[~np.isnan(a)])

결과


   * 비교 연산자 인덱싱은 빈번하게 사용하는 true, false 슬라이싱 개념
   * 결측치 : nan(응답자가 답을 안쓸 때, 보기가 1~5인데 6선택)

반응형
LIST
Comments