🚀 Languege/Python

python - numpy(8) 배열 생성 명령

mini_world 2020. 3. 30. 18:51
목차 접기


zeros, ones, empty(권장), arange, linspace 등의 함수를 사용해서 배열을 생성할 수 있습니다!


import numpy as np


# zeros() : 크기가 정해져 있는 모든 값이 0인 배열 생성, 인수는 배열의 크기
z_ar = np.zeros(5)
print('zeros array 1d \n', z_ar, z_ar.dtype)

# 다차원 배열: 인수의 크기를 나타내는 튜플 사용
z_2dar = np.zeros((2, 3))
print('zeros array 2d \n', z_2dar, z_2dar.dtype)

# 자료형 입력 지정
dt_z_ar = np.zeros((5, 2), dtype='i')
print('zeros array dt \n', dt_z_ar, dt_z_ar.dtype)

str_z_ar = np.zeros(5, dtype='U')
print('zeros array str \n', str_z_ar, str_z_ar.dtype)

# 데이터 넣기... 하나만 들어간다
str_z_ar[0] = 'teststr'
print(str_z_ar)


#-----------------------------------------------------------------------
print('-' * 100)

o_ar = np.ones((2, 3, 4), dtype='i8')
print('ones array \n', o_ar, o_ar.dtype)

# 크기를 명시하지 않고 다른 배열과 같은 크기를 만드는 경우

ol_ar = np.ones_like(o_ar, dtype='f')
zl_ar = np.ones_like(z_2dar, dtype='f')

print(ol_ar, '\n', zl_ar)

#-----------------------------------------------------------------------
print('-' * 100)

e_ar = np.empty((4, 3))
print(e_ar)

#-----------------------------------------------------------------------
print('-' * 100)

aran1 = np.arange(10)
print(aran1)

aran2 = np.arange(3, 21, 2)  # 시작, 끝, 간격
print(aran2)

#-----------------------------------------------------------------------
print('-' * 100)

lin_sp = np.linspace(0, 100, 5)  # 시작, 끝. 개수
print(lin_sp)


 

[코드 실행 결과]

zeros array 1d 
 [0. 0. 0. 0. 0.] float64
zeros array 2d 
 [[0. 0. 0.]
 [0. 0. 0.]] float64
zeros array dt 
 [[0 0]
 [0 0]
 [0 0]
 [0 0]
 [0 0]] int32
zeros array str 
 ['' '' '' '' ''] ['t' '' '' '' '']
----------------------------------------------------------------------------------------------------
ones array 
 [[[1 1 1 1]
  [1 1 1 1]
  [1 1 1 1]]

 [[1 1 1 1]
  [1 1 1 1]
  [1 1 1 1]]] int64
[[[1. 1. 1. 1.]
  [1. 1. 1. 1.]
  [1. 1. 1. 1.]]

 [[1. 1. 1. 1.]
  [1. 1. 1. 1.]
  [1. 1. 1. 1.]]] 
 [[1. 1. 1.]
 [1. 1. 1.]]
----------------------------------------------------------------------------------------------------
[[0.0078125 0.0078125 0.0078125]
 [0.0078125 0.0078125 0.0078125]
 [0.0078125 0.0078125 0.0078125]
 [0.0078125 0.0078125 0.0078125]]
----------------------------------------------------------------------------------------------------
[0 1 2 3 4 5 6 7 8 9]
[ 3  5  7  9 11 13 15 17 19]
----------------------------------------------------------------------------------------------------
[  0.  25.  50.  75. 100.]

Process finished with exit code 0

 

728x90