일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- pgAdmin
- GA4
- 데이터 전처리
- 머신러닝 입문 강좌 | TEAMLAB X Inflearn |
- 파이썬
- dbeaver
- 티스토리챌린지
- b2b 마케팅
- 문자열 함수
- 검색광고 캠페인
- 파이썬 코딩 무료 강의 (기본편) - 6시간 뒤면 여러분도 개발자가 될 수 있어요 [나도코딩]
- Pickle
- MAC
- inflearn
- google sa
- preprocessing
- dvdrental
- PYTHON
- 양승화
- search ads
- 외장함수
- 디지털 검색광고
- 숫자형
- sql
- 퍼포먼스 마케팅
- ndarray
- 오블완
- Def
- EXCEPT
- postgresql
- Today
- Total
Maron's DATA Log
[Python] NumPy 본문
# NumPy (Numerical Python)
: 데이터 분석을 포함해 수학/과학 연산을 위해 vector 와 matrix 를 핸들링하는 파이썬 기본 패키지
numpy 모듈의 호출
import numpy as np
# ndarray (Numpy Dimensional Arrary)
: N-차원 (N-Dimension) 배열 객체를 지원
ndarray 의 타입은 숫자, 문자, boolean 값 모두 가능하지만,
* ndarray 내의 데이터 타임은 모두 같은 타입이어야 (리스트와 가장 큰 차이점)
# np.arrray( )
: 리스트, 튜플, 배열로부터 ndarray를 생성
index 항상 0으로 시작
# array 생성
test_arrary = np.array([1, 4, 5, "8", float) # str 타입의 데이터를 입력해도 float 타입으로 자동 형변환
print(test_arrary)
print(type(test_arrary[3]) # float type 으로 자동 형변환을 실시
print(test_arrary.dtype) # dtype : numpy array 의 데이터 type 을 반환
print(test_arrary.shape) # shape : numpy arrary 의 object 의 dimension 구성을 반환
# arrary shape
: array - vector, matrix, tensor 의 크기, 형태 등에 대한 정보
# ndim (number of dimension) : 구성 차원 수
# size : 데이터의 총 개수
# dtype : ndarray 의 single element 가 가지는 data type (메모리의 크기가 결정됨)
# reshape
: array 의 shape 의 크기를 변경함 (element 갯수는 동일)
array 의 size 만 같다면 다차원으로 자유로이 변형 가능
* -1 : size 를 기반으로 row 개수 선정
test_matrix = [[1, 2, 3, 4], [1, 2, 5, 8]]
np.array(test_matrix).shape
np.array(test_matrix).reshape(8,)
np.array(test_matrix).reshape(2, 4).shape
np.array(test_matrix).reshape(-1, 2).shape
np.array(test_matrix).reshape(2, 2, 2)
# flatten
: 다차원 array 를 1차원 array 로 변환
(2, 2, 4) → (16,)
np.array(test_matrix).flatten( )
# indexing
: 리스트와 달리 이차원 배열에서 [0,0]과 같은 표기법을 제공
matrix 일 경우 앞은 row, 뒤는 column 을 의미
a = np.array([1, 2, 3], [4, 5, 6]], int)
print(a)
print(a[0,0])
print(a[0][0])
# matrix 0, 0 에 할당
a[0,0] = 7
print(a)
a[0][0] = 8
print(a)
# slicing
: 리스트와 달리 행과 열 부분을 나눠서 슬라이싱 가능
matrix 의 부분 집합을 추출할 때 유용
a = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]], int)
a[:, 2:] # Row - 전체, column - 2열 이상
a[1, 1:3] # 1 Row 의 1열 ~ 2열
a[1:3] # 1 Row ~ 2 Row 의 전체
0 | 1 | 2 | 3 | 4 | |
0 | 1 | 2 | 3 | 4 | 5 |
1 | 6 | 7 | 8 | 9 | 10 |
b = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10], [11, 12, 13, 14, 15]], int)
b[:,::2]
b[::2,::3]
'Python' 카테고리의 다른 글
[Python] Pandas (0) | 2020.12.04 |
---|---|
[Python] 모듈, 패키지, 내장함수, 외장함수 (0) | 2020.12.01 |
[Python] 예외처리 - Try / Except / Finally (0) | 2020.12.01 |
[Python] 클래스 / 메소드 (Method) / 상속 (0) | 2020.12.01 |
[Python] 입출력 (0) | 2020.11.30 |