오답노트
[Numpy] 배열의 기본적인 연산 본문
배열의 사칙연산
배열간 사칙연산을 수행할 때, 연산자를 사용하거나 Numpy에서 제공되는 함수를 사용할 수 있다.
아래 코드블록의 내용을 기준으로 앞으로 나올 사칙연상을 수행한다.
import numpy as np
arr1 = np.array([[1,2,3],
[4,5,6],
[7,8,9]])
arr2 = np.array([[2,2,2],
[2,2,2],
[2,2,2]])
print(arr1)
'''''''
[[1 2 3]
[4 5 6]
[7 8 9]]
'''''''
print(arr2)
'''''''
[[2 2 2]
[2 2 2]
[2 2 2]]
'''''''
덧셈 / add
'+' 연산자 또는 add 함수를 사용해 행렬간 덧셈을 수행한다.
#덧셈
print(arr1 + arr2)
print(np.add(arr1,arr2))
'''''''
[[ 3 4 5]
[ 6 7 8]
[ 9 10 11]]
''''''''
뺄셈 / subtract
'-' 연산자 또는 subtract 함수를 사용해 행렬간 뺄셈을 수행한다.
#뺄셈
print(arr1-arr2)
print(np.subtract(arr1,arr2))
'''''''
[[-1 0 1]
[ 2 3 4]
[ 5 6 7]]
'''''''
곱셈 / multiply
' * ' 연사자 또는 multiply 함수를 사용해 행렬간 곱셈을 수행한다.
주의할 점은 수학에서 수행하는 행렬의 곱과 달리 원소 단위의 곱에 대한 결과를 반환한다.
#곱셈 -> 내적연산이 아닌 원소 단위의 곱셈에 대한 결과
print(arr1 * arr2)
print(np.multiply(arr1,arr2))
'''''''
[[ 2 4 6]
[ 8 10 12]
[14 16 18]]
'''''''
제곱 / square
'**' 연산자 또는 square 함수를 통해 행렬의 제곱을 구할 수 있다.
'**' 연산자는 뒤 따라 오는 정수에 따라 n 제곱도 구할 수 있다.
#제곱 연산
print(arr1 ** 2)
print(np.square(arr1))
'''''''
[[ 1 4 9]
[16 25 36]
[49 64 81]]
'''''''
print(arr1 ** 4)
'''''''
[[ 1 16 81]
[ 256 625 1296]
[2401 4096 6561]]
''''''''
제곱근 / sqrt
sqrt 함수를 사용해 행렬의 제곱근을 구할 수 있다.
#제곱근
print(np.sqrt(arr1))
'''''''
[[1. 1.41421356 1.73205081]
[2. 2.23606798 2.44948974]
[2.64575131 2.82842712 3. ]]
'''''''
나눗셈 / divide
'/' 연산자 또는 diveide 함수를 사용해 행렬간 나눗셈을 수행한다.
#나눗셈
print(arr1 / arr2)
print(np.divide(arr1,arr2))
''''''''
[[0.5 1. 1.5]
[2. 2.5 3. ]
[3.5 4. 4.5]]
'''''''
몫
파이썬에서 사용하는 '//' 연산자를 통해 몫을 구할 수 있다.
#몫
print(arr1 // 2)
'''''''
[[0 1 1]
[2 2 3]
[3 4 4]]
'''''''
나머지
파이썬에서 사용하는 '%' 연산자를 통해 나머지를 구할 수 있다.
#나머지
print(arr1 % 2)
'''''''
[[1 0 1]
[0 1 0]
[1 0 1]]
'''''''
'Python > Numpy' 카테고리의 다른 글
[Numpy] 배열의 최소, 최대, 원소 합, 원소 평균, 표준 편차, 누적 합, 중간 값 연산 (0) | 2022.07.10 |
---|---|
[Numpy] 배열의 내적, 절대 값, 소수 관련 연산 (0) | 2022.07.10 |
[Numpy] 배열 인덱싱 (0) | 2022.07.08 |
[Numpy] 난수로 이루어진 N차원 배열 (0) | 2022.07.08 |
[Numpy] 특정 범위의 값을 가지는 N차원 배열 생성 (0) | 2022.07.07 |