넘파이 - NumPy 는 Numerical Python의 줄임말이다.
파이썬으로 수치 해석이나 통계 관련 작업을 구현할 때 가장 기본이 되는 모듈이다.
1.1 Numpy 설치, 생성
넘파이를 pip install numpy 명령으로 설치
C:\Users\user\AppData\Local\Programs\Python>pip install numpy
C:\Users\user\AppData\Local\Programs\Python>python
>>> import numpy as np # 해당 구문을 이용해 np로 줄여서 사용
>>> A = np.array([[1,2],[3,4]])
>>> A
array([[1, 2],
[3, 4]])
넘파이 배열은 ndarray 타입 클래스이다.
// array와 ndarray 의 차이점은 grey-hat.tistory.com/62 여기에서 확인가능하다.
1.2 배열 확인
배열은 차원을 나타내는 ndim 속성과 각 차원의 크기를 튜플로 나타내는 shape 속성을 지닌다.
>>> type(A)
<class 'numpy.ndarray'>
>>> A.ndim # 배열의 차원
2
>>> A.shape # 배열 크기
(2, 2)
>>> A.dtype # 원소 자료형
dtype('int32')
넘파이 배열 객체는 원소별 최댓값, 평균값, 최솟값, 합계를 구하는 함수도 제공한다.
>>> print(A.max(), A.mean(), A.min(), A.sum())
4 2.5 1 10
1.3 배열의 접근
배열에 접근하는 방법으로는 대괄호를 사용하여 접근한다.
A[행 인덱스][열 인덱스] 형식을 사용하거나 A[행 인덱스, 열 인덱스] 형식을 사용하면 된다.
>>> A[0]
array([1, 2])
>>> A[1]
array([3, 4])
>>> A[0];A[1]
array([1, 2])
array([3, 4])
>>> print(A[0,0], A[0,1]); print(A[1,0],A[1,1])
1 2
3 4
조건에 맞는 원소들만 인덱싱하는 것도 가능하다.
>>> A[A>1]
array([2, 3, 4])
1.4 배열 형태 바꾸기
T 속성이나 transpose() 함수를 사용해 배열의 전치를 구할 수 있다.
>>> A
array([[1, 2],
[3, 4]])
>>> A.T
array([[1, 3],
[2, 4]])
>>> A.transpose()
array([[1, 3],
[2, 4]])
flatten() 함수는 다차원 배열을 1차원 배열 형태로 바꾸는 데 사용하며, 이를 평탄화한다고 표현한다.
>>> A
array([[1, 2],
[3, 4]])
>>> A.flatten()
array([1, 2, 3, 4])
1.5 배열의 연산
같은 크기의 행렬끼리는 사칙 연산이 가능하다.
연산 수행시 같은 원소끼리 연산을 하게 된다.
>>> A
array([[1, 2],
[3, 4]])
>>> A + A
array([[2, 4],
[6, 8]])
>>> A - A
array([[0, 0],
[0, 0]])
>>> A * A
array([[ 1, 4],
[ 9, 16]])
>>> A / A
array([[1., 1.],
[1., 1.]])
1.6 브로드캐스팅
수학에서는 크기가 같은 행렬끼리만 연산을 할 수 있다만 NumPy에서는 행렬 크기가 달라도 연산을 수행 할 수 있게
크기가 작은 행렬을 확장해준다. = this is 브로드캐스팅
>>> A
array([[1, 2],
[3, 4]])
>>> B = np.array([10,100])
>>> A * B
array([[ 10, 200],
[ 30, 400]])
1.7 내적 구하기
작성 중
- 모든 내용은 파이썬 증권 데이터 분석 책을 참고하여 작성하였습니다.
'Python > 증권 데이터 분석' 카테고리의 다른 글
파이썬 라이브러리인 pandas(판다스) 설치, 시리즈 (생성,변경,수정,인덱싱,삭제,시각화) (0) | 2020.12.19 |
---|---|
array, ndarray 차이점, 코드 사용 방식 (0) | 2020.12.15 |
파이썬 문자열 - str 문자열 클래스 (0) | 2020.12.11 |
파이썬 IDLE 란? , 사용방법 (0) | 2020.12.11 |
cmd 명령창에서 python을 이용해 hello, world 출력하기 (0) | 2020.12.11 |
댓글