[Data Handling] Numerical Python - Numpy :: (2) ndarray
numpy :: ndarray
numpy 모듈 호출 (import)
-
numpy의 호출 방법
-
일반적으로 numpy는 np라는 별칭(alias)을 이용해서 호출함
-
특별한 이유는 없음 .. 세계적인 약속 같은 것
import numpy as np
array creation
-
numpy는 np.array 함수를 활용하여 배열을 생성 -> ndarray (numpy dimension array)
-
numpy는 하나의 데이터 타입만 배열에 넣을 수 있음
-
리스트와 가장 큰 차이점 : Dynamic typing not supported
-
C의 array를 사용하여 배열 생성
test_array = np.array(["1", "4", 5, 8], float)
test_array
numpy의 호출 방법
일반적으로 numpy는 np라는 별칭(alias)을 이용해서 호출함
특별한 이유는 없음 .. 세계적인 약속 같은 것
import numpy as np
numpy는 np.array 함수를 활용하여 배열을 생성 -> ndarray (numpy dimension array)
numpy는 하나의 데이터 타입만 배열에 넣을 수 있음
리스트와 가장 큰 차이점 : Dynamic typing not supported
C의 array를 사용하여 배열 생성
test_array = np.array(["1", "4", 5, 8], float)
test_array
array([1., 4., 5., 8.])
type(test_array[3])
numpy.float64
test_array = np.array([1, 4, 5, "8"], np.float32) # string type의 데이터("8")를 입력해도
test_array
array([1., 4., 5., 8.], dtype=float32)
type(test_array[3]) # float type으로 자동 형변환 실시
numpy.float32
test_array.dtype # dtype : 배열 전체의 data type을 반환
dtype('float32')
test_array.shape # shape : 배열의 shape을 반환함 (튜플 타입)
(4,)
array shape
- array (vector, matrix, tensor)의 크기, 형태 등에 대한 정보
# array shape (vector)
test_array = np.array([1, 4, 5, "8"], float)
test_array.shape # ndarray의 shape을 반환 (튜플 타입)
(4,)
# array shape (matrix)
matrix = [[1, 2, 5, 8], [1, 2, 5, 8], [1, 2, 5, 8]]
np.array(matrix, int).shape # ndarray의 shape을 반환 (튜플)
(3, 4)
# array shape (3rd order tensor)
tensor = [[[1,2,5,8],[1,2,5,8],[1,2,5,8]],
[[1,2,5,8],[1,2,5,8],[1,2,5,8]],
[[1,2,5,8],[1,2,5,8],[1,2,5,8]],
[[1,2,5,8],[1,2,5,8],[1,2,5,8]]]
np.array(tensor, int).shape # ndarray의 shape을 반환 (튜플)
# 4 -> 깊이, 3 -> column, 4 -> row
(4, 3, 4)
# ndim : number of dimension
np.array(tensor, int).ndim
3
# size : 전체 data의 개수
np.array(tensor, int).size
48
array dtype
- ndarray의 single element가 가지는 datatype
- 각 element가 차지하는 memory의 크기가 결정됨
np.array([[1, 2, 3], [4.5, 5, 6]], dtype=int) # data type을 integer로 선언
array([[1, 2, 3],
[4, 5, 6]])
np.array([[1, 2, 3], [4.5, "5", "6"]], dtype=np.float32) # data type을 float로 선언
array([[1. , 2. , 3. ],
[4.5, 5. , 6. ]], dtype=float32)
# nbytes : ndarray의 object의 메모리 크기를 반환
np.array([[1, 2, 3], [4.5, "5", "6"]], dtype=np.float32).nbytes
# 6 * 32bits = 6 * 4bytes = 24bytes
24
np.array([[1, 2, 3], [4.5, "5", "6"]], dtype=np.int8).nbytes
# 6 * 8bits = 6 * 1bytes = 6bytes
6
np.array([[1, 2, 3], [4.5, "5", "6"]], dtype=np.float64).nbytes
# 6 * 64 bits = 6 * 8bytes = 48bytes
48
https://www.boostcourse.org/ai222/lecture/24071
Author And Source
이 문제에 관하여([Data Handling] Numerical Python - Numpy :: (2) ndarray), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@ssongplay/Data-Handling-Numerical-Python-Numpy-2-ndarray저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)