코인정보
[Python] Numpy 쉬운 개념, 쉬운 실습
챗토닥
2023. 10. 16. 00:22
반응형
Numpy 기본 개념
Numpy는 Numerical Python의 줄임말로, 벡터와 행렬 연산을 쉽게 할 수 있는 파이썬 라이브러리입니다.
이 라이브러리는 C언어로 구현되어 있어서 고성능의 수치 계산을 지원합니다.
Numpy는 데이터 분석에 자주 사용되는 pandas와 matplotlib의 기반이기도 합니다.
Numpy에서 데이터는 기본적으로 array라는 단위로 관리됩니다.
이를 사용하여 다양한 연산을 수행할 수 있습니다. array는 행렬과 비슷한 개념으로 생각할 수 있습니다.
Numpy를 사용하기 위해서는 다음과 같은 코드로 numpy를 import 해야 합니다.
#Numpy 사용
import numpy as np
Numpy 실습
Numpy 라이브러리를 활용한 실습을 알아보겠습니다.
a=np.array([1,2,3,4,5])
b=np.array(['고양이', '강아지'])
c=np.array([1,2,'고양이','강아지'])
print (a)
print (b)
print (c)
#[1 2 3 4 5]
#['고양이' '강아지']
#['1' '2' '고양이' '강아지']
숫자형 데이터로만 구성된 ndarray는 숫자로만 표기되어 출력되고, 숫자와 문자열을 혼합 사용 시, 모든 내용을 문자열['']로 인식하여 출력합니다.
다음으로 기본적인 행렬 연산을 해보겠습니다.
d=np.array([[1,2,3,4,5],[6,7,8,9,10]])
e=np.array([[1,3,5,7,9],[2,4,6,8,10]])
print (d)
print (e)
print (d*e)
#[[ 1 2 3 4 5]
# [ 6 7 8 9 10]]
#[[ 1 3 5 7 9]
# [ 2 4 6 8 10]]
#[[ 1 6 15 28 45]
# [ 12 28 48 72 100]]
행렬의 자릿수가 element-wise 하게 연산을 하는 것을 알 수 있습니다.
덧셈이나 뺄셈, 나눗셈도 마찬가지 방식으로 연산을 수행합니다. 이때 각각의 array는 같은 크기를 가져야 합니다.
다음으로 Numpy 라이브러리를 활용한 다양한 함수입니다.
# 0인 요소를 5열 만든다.
f=np.zeros(5)
print(f)
# 0인 요소를 2행 2열 만든다.
g=np.zeros((2,2))
print(g)
# 1인 요소를 5열 만든다.
h=np.ones(5)
print(h)
# 0부터 인자 미만까지 증가시킨다.
i=np.arange(5)
print(i)
# 첫번째 인자부터, 두번재 인자 미만까지 증가시킨다.
i=np.arange(2,5)
print(i)
# 첫번째 인자부터, 두번째 인자 미만까지 세번째 인자 간격만큼 증가시킨다.
j=np.arange(2,5,0.5)
print(j)
#[0. 0. 0. 0. 0.]
#[[0. 0.]
# [0. 0.]]
#[1. 1. 1. 1. 1.]
#[0 1 2 3 4]
#[2 3 4]
#[2 2.5 3 3.5 4 4.5]
원하는 요소를 인덱싱할 수 있습니다. 아래는 그 예시입니다.
b=np.array(['고양이', '강아지'])
print(b[0])
#고양이
다음은 2차원 행렬의 인덱싱 실습입니다.
#2행 5열의 배열 d 생성
d=np.array([[1,2,3,4,5],[6,7,8,9,10]])
print(d[0,0])
#1행 1열의 값 출력 : 1
print(d[1,1])
#2행 2열의 값 출력 : 7
print(d[1,:])
#2행 모든 값 출력 : [6 7 8 9 10]
print(d[:])
#모든 값 출력 : [[1 2 3 4 5]
# [6 7 8 9 10]]
print(d[:,3])
#모든 행의 4번째 열 값 출력 : [4 9]
다음은 Pandas에 대해 알아보도록 하겠습니다.
반응형