티스토리 뷰
Numpy 라이브러리에서는 Numpy Array에 한해, 특별한 overloading을 제공한다.
사칙연산 같은 간단한 연산에 사용할 수 있다.
C/C++ 에서는 자료형이 다르면 당연히 연산이 불가능하다.
// We cannot operate different types under C/C++
int myArray[4] = {1, 2, 3, 4};
int num = 100;
// This is an error
int newArray = myArray + num
Python 에서도 마찬가지이다. 다른 종류의 자료형끼리는 연산이 안된다.
myList = [1,2,3,4]
num = 100
newList = myList + num
# TypeError: can only concatenate list (not "int") to list
그러나, Numpy 라이브러리에서 Numpy Array를 사용하면 간단한 연산이 overloading 가능하다.
import numpy
myList = numpy.array([1,2,3,4])
num = 100
newList = myList + num
print(newList)
# [101 102 103 104]
newList = myList - num
print(newList)
# [-99 -98 -97 -96]
newList = myList / num
print(newList)
# [0.01 0.02 0.03 0.04]
newList = myList * num
print(newList)
# [100 200 300 400]
newList = myList % num
print(newList)
# [1 2 3 4]
비교 연산도 가능하다
import numpy
myList = numpy.array([1,2,3,4])
print(myList <= 3)
# [ True True True False]
print(myList < 3)
# [ True True False False]
# 당연히 여러 연산을 합칠 수 도 있다.
print(myList+3 < 3)
# [ False False False False]
print(myList-2 < 3)
# [ True True True True]
print(myList*2 < 3)
# [ True False False False]
'머신러닝 라이브러리 > numpy' 카테고리의 다른 글
numpy.random.randint (0) | 2022.10.12 |
---|