# 기본 연산
arr1 = np.array([10, 20, 30, 40])
arr2 = np.array([1, 2, 3, 4])
# 덧셈
print(arr1 + arr2) # [11 22 33 44]
# 뺄셈
print(arr1 - arr2) # [ 9 18 27 36]
# 곱셈
print(arr1 * arr2) # [ 10 40 90 160]
# 나눗셈
print(arr1 / arr2) # [10. 10. 10. 10.]
- 비교 연산
arr1 > 20 # array([False, False, True, True])
# 통계를 위한 연산
# 배열 생성
arr3 = np.arange(5)
arr3 # array([0, 1, 2, 3, 4])
- 배열의 합
arr3.sum() # 10
- 배열의 평균
arr3.mean() # 2.0
- 배열의 표준 편차
arr3.std() # 1.4142135623730951
- 배열의 분산
arr3.var() # 2.0
- 배열의 최솟값
arr3.min() # 0
- 배열의 최댓값
arr3.max() # 4
# 배열 생성
arr4 = np.arange(1, 5)
arr4 # array([ 1, 2, 6, 24])
- 누적 합
arr4.cumsum() # array([ 1, 3, 6, 10])
- 누적 곱
arr4.cumprod() # array([ 1, 2, 6, 24])
# 행렬 연산
# 행렬 생성
A = np.array([0, 1, 2, 3]).reshape(2, 2)
A
# array([[0, 1],
# [2, 3]])
B = np.array([3, 2, 0, 1]).reshape(2, 2)
B
# array([[3, 2],
# [0, 1]])
- 행렬 곱
A.dot(B)
# array([[0, 1],
# [6, 7]])
# np.dot(A, B)와 같다.
- 전치 행렬
A.transpose()
# array([[0, 2],
# [1, 3]])
# np.transpose(A)와 같다.
- 역행렬
np.linalg.inv(A)
# array([[-1.5, 0.5],
# [ 1. , 0. ]])
- 행렬식
np.linalg.det(A) # -2.0
728x90
'Python' 카테고리의 다른 글
[NumPy] NumPy 조건문 (0) | 2024.01.17 |
---|---|
[NumPy] 배열의 인덱싱과 슬라이싱 (0) | 2024.01.17 |
[NumPy] np.random.randint를 이용하여 로또 번호 생성기 만들기 (0) | 2024.01.17 |
[NumPy] 배열 생성 (0) | 2024.01.17 |
[Python] 가상 환경 사용하기 (2) | 2024.01.16 |