[AI 온라인 교육] 데이터 핸들링을 위한 라이브러리 Numpy
NumPy (Numerical Python): Python에서 대규모 다차원 배열을 다룰 수 있게 도와주는 라이브러리
→ 데이터의 대부분은 숫자 배열 형태이므로 이를 처리하기 위함
numpy로 배열 생성하기
import numpy as np
np_arr = np.array(range(5)) #0~4까지의 연속적인 숫자 배열 생성
print(np_arr) #[0 1 2 3 4] → 공백으로 구분
print(type(np_arr)) #<class 'numpy.ndarray'>
❗️list는 여러 타입의 데이터를 저장할 수 있는 것과 달리 numpy는 같은 데이터 타입만 저장 가능
배열의 데이터 타입 dtype
- 정수형 타입: int, i, int_, int32, int64, i8
- 실수형 타입: float, f, float_, float32, float64, f8
- 문자열 타입: str, U, U32
- 불 타입: bool, ?, bool_
배열의 속성
- ndim: 차원
- shape: 행과 열
- size: 배열 요소의 수
cf) len(): 배열의 길이 (행)
실습 1
import numpy as np
array = np.array(range(10)) #[0 1 2 3 4 5 6 7 8 9] 생성
print(array.ndim) # 차원 출력 -> 1
print(array.shape) # 모양 출력 -> (10,)
print(array.size) # 크기 출력 -> 10
print(array.dtype) # data type 출력 -> int64
print(array[3:6]) # 인덱스 3요소부터 5요소까지 출력
print(array.astype('str')) # dtype을 str로 변경
Indexing & Slicing
- indexing: 인덱스로 값을 찾아냄
- slicing: 인덱스의 값으로 배열의 일부분을 가져옴
- Boolean indexing: 배열의 각 요소의 선택 여부를 Boolean mask를 이용하여 지정
→ Boolean mask: True, False로 구성된 mask array - Fancy indexing: 배열의 각 요소 선택을 Index 배열을 전달하여 지정
실습 2
import numpy as np
matrix = np.array(1, 13, 1).reshape(3, 4)
'''[[ 1 2 3 4 ]
[ 5 6 7 8 ]
[9 10 11 12]]'''
print(matrix[0,1]) # Indexing을 통해 값 2 출력
print(matrix[2:,:2]) # Slicing을 통해 9, 10 출력
print(matrix[matrix < 5])) # Boolean indexing를 이용해 5보다 작은 수 출력
print(matrix[[0,2]]) # Fancy indexingd을 통해 0번째,2번째 행만 출력
Author And Source
이 문제에 관하여([AI 온라인 교육] 데이터 핸들링을 위한 라이브러리 Numpy), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@yeah7598/AI-온라인-교육-데이터-분석을-위한-라이브러리2저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)