본문 바로가기

CS공부

파이썬 파헤치기 - numpy 배열 연산자를 알아보자!

파이썬에서 pandas와 함께 자주 사용되는 numpy.

이 둘은 특히 데이터 분석에서는 기초적으로 사용되는 라이브러리입니다.

특히, numpy는 수학과 과학과 관련된 연산에서는 필수적으로 사용하다보니 꼭 한번 정리하고 넘어가도록 하겠습니다.



Numpy의 연산자들

  1. np.add
  2. np.subtract
  3. np.multiply
  4. np.divide
  5. np.true_divide
  6. np.flooor_divide
  7. np.remainder
  8. np.mod
  9. np.prod
  10. np.reciprocal

1. np.add

- array 단위로 덧셈을 계산하는 연산자입니다.

import numpy as np

a = np.add(1,10)
print(a)
# 11

2. np.subtract

- array 단위로 뺄셈을 계산하는 연산자입니다.

import numpy as np
a = np.subtract(1,10)
print(a)
# -9

b =np.arange(9).reshape((-1,3)) # 예시를 위한 배열을 만듬.
c = np.arange(3)
print(np.subtract(b,c))

3. np.multiply

- array 단위로 곱셈을 계산하는 연산자입니다.

import numpy as np
a = np.multiply(3,4)
print(f"a의 값은 {a}\n")

b = np.arange(12).reshape(-1,3)
c = np.arange(3)

print(f"b의 값은 {b}\n")
print(f"c의 값은 {c}\n")
print(f"b*c의 값은\n {np.multiply(b,c)}")

4. np.divide

- array 단위로 나눗셈을 계산하는 연산자입니다.

import numpy as np
a = np.arange(10)
b = np.divide(a, 2)
c = np.divide(a, 3)

print(f"a는 {a}\n")
print(f"b는 {b}\n")
print(f"c는 {c}")

5. np.true_divide

- array 단위로 나눗셈을 계산하는 연산자입니다.(np.divide와 동일)

import numpy as np
a = np.arange(10)
b = np.true_divide(a, 2)
c = np.true_divide(a, 3)

print(f"a는 {a}\n")
print(f"b는 {b}\n")
print(f"c는 {c}")

6. np.floor_divide

- array 단위로 나눗셈의 몫을 반환하는 연산자입니다.( 기본 연산자 중 //의 역할)

import numpy as np
a = np.arange(10)
b = np.floor_divide(a, 2)
c = np.floor_divide(a, 3)

print(f"a는 {a}\n")
print(f"b는 {b}\n")
print(f"c는 {c}")

7. np.remainder

- array 단위로 나눗셈의 나머지를 반환하는 연산자입니다. (기본 연산자 중 %의 역할)

import numpy as np
a = np.remainder([4,7], [2,3])
b = np.remainder(np.arange(10),5)
c = np.remainder(5,2)

print(f"a는 {a}\n")
print(f"b는 {b}\n")
print(f"c는 {c}")

8. np.mod

- array 단위로 나눗셈의나머지를 반환하는 연산자입니다.(np.remainder와 동일)

import numpy as np
a = np.arange(10)
b = np.mod(a,4)
c = np.mod(a,3)

print(f"a는 {a}\n")
print(f"b는 {b}\n")
print(f"c는 {c}")

9. np.prod

- 기준 축에 따라 array의 곱을 반환하는 연산자입니다.

import numpy as np
a = np.array([1,2,3,4])
b = np.array([[1,2,3], [4,5,6]])

print(f"np.prod(a)는 {np.prod(a)}\n") # axis 옵션을 주지 않으면 전체 곱
print(f"np.prod(b)의 axis =0은 {np.prod(b, axis=0)}\n") # axis = 0 열
print(f"np.prod(b)의 axis=1은 {np.prod(b, axis=1)}\n") # axis = 1 행

10. np.reciprocal

- array의 역수를 반환하는 연산자입니다.

- 정수는 다루지 않아 0으로 반환.

import numpy as np
a = np.reciprocal(3)
b = np.reciprocal([1,2,3]) # integer 정수 타입
c = np.reciprocal([1., 2., 3.]) # float 실수 타입

print(f"a는 {a}\n")
print(f"b는 {b}\n")
print(f"c는 {c}")

'CS공부' 카테고리의 다른 글

파이썬 파헤치기 - 배열(Array)에 대해서  (0) 2023.05.10
Class란 무엇인가?  (0) 2023.05.04
replication과 clustering이란??  (0) 2023.05.03
JVM이란 무엇인가요?  (0) 2023.04.23
B-트리 구조와 B+구조  (0) 2023.04.21