3. 유니버설 함수: 배열의 각 원소를 빠르게 처리하는 함수
ufunc라고도 부르는 유니버설 함수는 ndarray안의 데이터 원소별로 연산을 수행하는 함수
단항 유니버셜 함수
- abs, fabs: 절대값 구하기, 복소수가 아닌 경우 빠른 연산을 위해 fabs 사용
- sqrt: 제곱근
- square: 제곱
- exp: 지수 ex를 계산
- log, log10, log2, log1p: 로그
- sign: 부호를 계산(1=양수,0,-1=음수)
- ceil: 올림
- floor: 내림
- rint: 반올림
- modf: 몫과 나머지를 배열로 반환
- isnan: 숫자인지 아닌지 불리언 배열 반환
- isfinite, isint: 유한수인지, 무한수인지 반환
- cos, cosh, sin, sinh, tan, tanh: 일반 삼각함수와 쌍곡선삼각함수
- acrros, arccosh, arcsin: 역삼각함수
- arcsinh, arctan, arctanh: 역삼각함수
- logical_not: 논리 부정값을 계산
이항 유니버설 함수
- add: 두 배열에서 같은 위치의 원소끼리 더한다.
- subtract: 첫 번째 배열의 원소에서 두 번째 배열의 원소를 뺀다.
- multipy: 배열의 원소끼리 곱한다.
- divide, floor_divide: 나눈다. floor_divde는 몫만 취한다.
- power: 첫 번째 배열의 원소를 두 번째 배열의 원소만큼 제곱한다.
- maximum, fmax: 두 원소중 큰 값 반환 ,famx는 Nan을 무시
- minimum, fmin: 두 원소중 작은 값 반환
- mod: 나눈 나머지
- copysign: 첫 번째 배열의 원소를 두번쨰 배열의 원소의 기호로 바꾼다.
- greater, greater_equal, less: 각 원소의 비교 연선 결과를 불리언으로 배열
- less_equal, equal, not_equal: 각 원소의 비교 연선 결과를 불리언으로 배열
- logical_and: AND 논리 연산결과를 반환
- logical_or: OR 논리 연산 결과를 반환
- logical_xor: XOR 논리 연산결과를 반환
4. 배열을 이용한 배열 기반 프로그래밍
1) 배열 연산으로 조건부 표현하기
- numpy.where: x if 조건 else 같은 삼항식의 백터화 버전
np.where(arr > 0, 2, arr) # 양수인 경우에만 값을 2로 변경
2) 수학 메서드와 통계 메서드
- sum(), mean(), std()
- mean이나 sum 같은 핫무는 axis 인수를 받아 axis에 대한 통계를 계산하고 한 차수 낮은 결과를 반환
- cumsum(), cumprod(): 중간 계산값을 담고 있는 배열을 반환
3) 불리언 배열을 위한 메서드
(arr > 0).sum()
bools = np.array([False, False, True, False])
bools.any() # True
bools.all() # False
4) 정렬
- sort(): 정렬된 복사본으로 반환
5) 집합 관련 함수
- unique(x): 중복 제거 후, 정렬
- intersect1d(x, y): 교집합 정렬
- union1d(x, y): 합집합
- in1d(x, y): x의 원소가 y의 원소에 포함되는지 나타내는 불리언 배열 반환
- setdiff1d(x, y): 차집합 반환
- setxor1d(x, y): 대칭 차집합을 반환
5. 배열 데이터의 파일 입출력
- numpy.save(): 기본적으로 압축되지 않은 원시 바이너리 형싱의 .npy파일로 저장
- numpy.load(): 불러오기
6. 선형대수
- diag: 정사각 행렬의 대각/비대각 원소를 1차원 배열로 반환하거나, 1차원 배열을 대각원소로하고 나머지는 0으로 채운 단위 행렬을 반환
- dot: 행렬 곱셈
- trace: 행렬의 대각선 원소의 합을 계산
- det: 행렬식을 계산한다.
- eig: 정사각 행렬의 고윳값과 고유백터를 계산
- inv: 정사각 행렬의 역행렬을 계싼
- pinv: 정사각 행렬의 무어-펜로즈 유사역행렬을 구한다.
- qr: QR 분해를 계싼한다.
- svd: svd 특잇값 분해(SVD)를 계산한다.
- solve: A가 정사각 행렬일 떄 Ax = b 를 만족하는 x를 구한다.
- lstsq: Ax = b를 만족하는 최소제곱해를 구한다.
'IT > Data Analysis with python' 카테고리의 다른 글
데이터 로딩과 저장, 파일 형식 (1) | 2024.06.02 |
---|---|
판다스 시작하기: 핵심기능 및 기술 통계 계산 (1) | 2024.06.02 |
판다스 시작하기: Series, DataFrame (1) | 2024.06.02 |
넘파이 기본: 배열과 백터연산 01 (0) | 2024.05.17 |
데이터 분석에 파이썬을 사용하는 이유 (0) | 2024.05.17 |