라일락 꽃이 피는 날

[Numpy] ndarray 본문

데이터 분석/Python

[Numpy] ndarray

eunki 2021. 4. 22. 20:58
728x90

Numpy : 수학, 과학 계산을 위한 패키지 (Numerical Python)

import numpy as np

 

 

ndarray : n차원 배열 (n dimension array)

1D array : 1차원 배열

numpy.array([1, 2, 3, 4])

shape: (4,) ⇒ 4×1의 배열

 

2D array : 2차원 배열

numpy.array([1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12])

shape: (3, 4) ⇒ 3×4의 배열

 

3D array : 3차원 배열

shape: (2, 5, 3) ⇒ 2×5×3의 배열

 

 

 


1. ndarray 생성

arr = np.array([1, 2, 3, 4], dtype=int)

arr  # array([1, 2, 3, 4])
type(arr)  # numpy.ndarray

 

 

2. list로부터 ndarray 생성

mylist1 = [1, 2, 3, 4]
arr1 = np.array(mylist1)

arr1.shape  # (4,)
mylist2 = [[1, 2, 3, 4], [5, 6, 7, 8]]
arr2 = np.array(mylist2)

arr2.shape  # (2, 4)

 

ndarray에서는 1개의 단일 데이터 타입만 허용된다. 그렇다면 다음과 같은 경우에는 어떻게 될까?

 

① int와 float 타입이 혼재된 경우

   데이터 타입이 모두 float로 변환된다.

arr = np.array([1, 2, 3, 3.14])

arr  # array([1. , 2. , 3. , 3.14])

 

② int와 float 타입이 혼재되었으나, int로 dtype을 지정한 경우

arr = np.array([1, 2, 3, 3.14], dtype=int)

arr  # array([1, 2, 3, 3])

 

③ int와 str 타입이 혼재된 경우

   데이터 타입이 모두 str로 변환된다.

arr = np.array([1, 3.14, '테디', '1234'])

arr  # array(['1', '3.14', '테디', '1234'], dtype='<U32')

 

④ int와 str 타입이 혼재되었으나, int로 dtype을 지정한 경우

arr = np.array([1, 3.14, '1234'], dtype=int)

arr  # array([1, 3, 1234])
728x90

'데이터 분석 > Python' 카테고리의 다른 글

[Pandas] Series, DataFrame  (0) 2021.04.26
[Numpy] matrix (행렬)  (0) 2021.04.23
[Numpy] sort, argsort  (0) 2021.04.23
[Numpy] arange  (0) 2021.04.22
[Numpy] 슬라이싱 (Slicing)  (0) 2021.04.22