-
[파이썬] 10. numpy 모듈 _ ndarray파이썬 Python 2019. 12. 23. 17:40
# numpy 모듈
numpy 모듈은 수치 연산을 위해 최적화된 모듈이다.
pandas와 더불어 기본적으로 필요한 모듈이라고 할 수 있다.
파이썬의 리스트 보다 빠르고, 적은 메모리를 사용하기 때문에
numpy에 내장되어 있는 ndarray라는 다차원 리스트를 사용할 수 있다.
또한 numpy안에는 선형대수, 통계와 관련된 여러 함수들이 내장되어 있다.
import numpy as np #numpy 호출 import matplotlib.pyplot as plt #그래프를 그리기 위한 모듈 x = np.array([1, 2, 3]) y = np.array([2, 4, 6]) print(x) print(y) plt.plot(x,y)
<np.array로 함수 생성하기>
x = np.array([1, 2, 3, 4]) print(x) y = np.array([2, 3, 4], [1, 2, 5]) #잘 쓰지 않음 print(y) print(type(y))
<np.arange 함수로 생성하기>
print(np.arange(10)) #0에서 10까지의 범위로 어레이를 만들게 됨 print(np.arange(1, 10)) print(np.arange(1, 10, 2)) print(np.arange(5, 101, 5))
<np.ones, np.zeoros 함수로 생성하기>
np.ones((4,5)) #4행 5열로 1만 갖는 어레이 생성 np.ones((2,3,4)) #3행 4열 짜리 행렬을 2개 생성 np.zeros((4,3,8)) #0만 갖는 3행 8열 행렬 4개 생성
<np.empty, np.full 로 생성하기>
np.empty((3,4)) # 비어있는 3행 4열 행렬을 생성 np.full((2, 3, 5),4) # 4로 채워진 3행 5열 행렬을 2개 생성
<np.eye로 단위행렬 생성하기>
np.eye(5) #5행 5열의 단위행렬 생성
<np.linspace로 생성하기>
np.linspace(1, 10, 3) #1과 10을 사이에 숫자 3개가 되도록 구간을 나눠라 #4.5 간격으로 생성 #결과값 : array([1., 5.5, 10.]) np.linspace(1, 10, 4) #숫자 간격이 동일하도록 4개로 구간을 나눔 #결과값 : array([ 1., 4., 7., 10.]) np.linspace(1, 10, 5) #결과값 : array([ 1. , 3.25, 5.5 , 7.75, 10. ])
<reshape 함수>
ndarray의 형태, 차원을 바꾸기 위해 사용
x = np.arange(1, 16) print(x) print(x.shape) print(x.reshape(3, 5)) #3행 5열로 바꿔라 print(x.reshape(5, 3, 1)) #5개의 3행 1열 행렬로 바꿔라 x.reshape(5, 4) 오류. 숫자가 5행 4열 행렬을 만들기 위해서는 수가 20개가 필요함
반응형'파이썬 Python' 카테고리의 다른 글
[파이썬] 9. Lamda 함수란? filter, map, reduce (0) 2019.12.05 [파이썬] 8. 파이썬 함수 정의와 호출 - 변수의 범위 (지역변수와 전역변수), 가변길이 인자 (*args, **kwargs), format 함수 (0) 2019.12.04 [파이썬] 7. 파이썬 함수 정의와 호출 - 함수의 parameter, return (함수 파라미터와 리턴) (0) 2019.12.04 [파이썬] 6. 반복문 while / for 의 이해 (feat. break와 continue) (1) 2019.11.25 [파이썬] 5. 조건문 if / elif/ else (0) 2019.11.25