비버놀로지

[선형대수학 Numpy] Numpy 산술연산자 본문

인공지능 머신러닝

[선형대수학 Numpy] Numpy 산술연산자

KUNDUZ 2022. 11. 3. 08:52
728x90

NumPy 산술연산자

np.sum()

sum()을 이용하면 행렬 안의 모든 값의 합을 빠르게 구할 수 있습니다.

>>> A = np.array([[1, 2], [3, 4]])
>>> print(np.sum(A))
10

+, -, /, *

NumPy 행렬에는 사칙연산을 적용할 수 있습니다. 수학에서는 이와 같은 연산을 허용하지 않지만, 큰 데이터를 다룰 때 편의를 위해 만들어진 기능입니다. A 행렬에 사칙연산을 적용하면 A안의 모든 원소에 해당 연산이 적용됩니다.

>>> A = np.array([[1, 2], [3, 4]])
>>> print(A + 2)
[[3 4]
 [5 6]]
>>> print(A / 5)
[[0.2 0.4]
 [0.6 0.8]]

np.mean, np.median, np.std, np.var

mean(), median(), std(), var()를 이용하면 행렬의 평균값, 중간값, 표준 편차값, 분산값을 코드 한 줄로 구할 수 있습니다. 이 외에도 NumPy는 통계 처리를 위한 다양한 함수를 제공합니다.

>>> A = np.array([1, 2, 4, 5, 5, 7, 10, 13, 18, 21])
>>> print(np.mean(A))
8.6
>>> print(np.median(A))
6.0
>>> print(np.std(A))
6.437390775772433
>>> print(np.var(A))
41.44
 

실습

  1. A 원소의 합이 1이 되도록 표준화(Normalization)를 적용하고 결괏값을 A에 다시 저장하세요. 예를 들어, [42,58][42, 58] 에 표준화를 적용하면 [0.42,0.58][0.42, 0.58] 이 됩니다.
  2. matrix_tutorial() 함수가 A의 분산(Variance)값을 리턴하도록 코드를 작성하세요.
  3. 실행 버튼을 누르고 결괏값을 확인해보세요.
import numpy as np

def main():
    print(matrix_tutorial())

def matrix_tutorial():
    A = np.array([[1,4,5,8], [2,1,7,3], [5,4,5,9]])

    # 아래 코드를 작성하세요.
    A = A/np.sum(A)
    
    return np.var(A)

if __name__ == "__main__":
    main()

 

 

 

728x90
Comments