numpy 는 python을 다루고, 배우는 이들에게 어쩌면 가장 기본이 되는 모듈이다.
numpy는 벡터 및 행렬 연산을 구현하도록 해주며
데이터분석을 할때 꼭 필요한 pandas 와 matplotlib의 기본이 되기도 한다.
자세한 사용법이야 워낙 인터넷에 많으니,
기본적으로 numpy를 잘 쓸수 있게 해주는 사용법을 몇개 정리 한다.
array - 말 그대로 행렬이다. numpy는 데이터를 array로 묶어 연산을 수행한다.
import numpy as np
data1 = [1,2,3,]
data1
out : [1,2,3]
arr1 = np.array(data1)
arr1
out: array([1,2,3])
arr1.shape
out:(3, )
arr1.dtype
out:dtype('int64')
이런식으로 표현될수 있겠다..
다른 몇가지 기본 기능을 살펴보면..
np.zeros(10)
#out:array([0., 0., 0., 0., 0., 0., 0., 0., 0., 0.])
#10자리의 모두 0으로 구성된 1차원 행렬을 생성한다.
np.zeros((3,5))
#out:array([[0., 0., 0., 0., 0.], [0., 0., 0., 0., 0.], [0., 0., 0., 0., 0.]])
#3*5 행렬 모양으로 모두 0으로 구성된 행렬을 생성한다.
np.ones(9)
np.ones((2,10))
#zeros와 마찬가지이나, 0 대신 1로 결과가 나온다.
이렇게 행렬을 나타 낼 수 있다.
이것을 응용해서 행렬간의 덧셈, 뺄셈, 나눗셈, 곱셈도 할 수 있다.
(직접 주피터 노트북에서 실행 해보자!)
arr1 = np.array([[1,2,3],[4,5,6]])
arr1
arr1.shape
arr2 = np.array([[10,11,12],[13,14,15]])
arr2
arr2.shape
# array 덧셈
arr1 + arr2
# array 뺄셈
arr1 - arr2
# array 곱셈
arr1 * arr2
# array 나눗셈
arr1 / arr2
위와 같이 행렬의 크기가 서로 같을때 계산을 할 수 있지만, 다를때로 할 수 있다.
이를 array의 브로드 캐스트 라 한다.
(아래 코드도 직접 실행 해 보자!)
arr1 = np.array([[1,2,3],[4,5,6]])
arr1
arr1.shape
arr3 = np.array([10,11,12])
arr3
arr3.shape
arr1 + arr3
arr1 * arr3
위와 같이 서로 크기가 다른 행렬의 arr1과 arr3의 연산이 가능하다.
연산결과를 살펴보면 arr3이 [10,11,12] 에서 [[10,11,12],[10,11,12]]로 확장되어 계산되었음을 확인할 수 있다.
일단, 뭐든 부딧혀서 알아내는것이 중요하다.
아직 블로그엔 작성하지 않고 있지만
"캐글 타이타닉" 을 따라해보고 있다.
궁금한 도전자는 구글 검색을 통해서 알 수 있으니, 한번 따라 해보길 바란다.
"캐글 타이타닉"을 따라하면서 같이 데이터 분석을 공부해 보자!!
'DB엔지니어가 공부하는 python' 카테고리의 다른 글
[python 데이터분석] 캐글 타이타닉 따라해보기 #2 (1) | 2019.12.26 |
---|---|
[python 데이터분석] 캐글 타이타닉 따라해보기 #1 (0) | 2019.12.26 |
[python] 크롤러 만들어 db에 정보 insert 하기 (3) | 2019.12.24 |
데이터 분석을 위한 python 시작, 설치 해보자.. (0) | 2019.12.24 |
[자바] java class 와 객체, 무엇인가? (0) | 2018.12.20 |