import numpy as np
python_list = [1, 2, 3, 4, 5]
ndarr = np.array(python_list)
print("python_list:", python_list)
print("ndarr:", ndarr, '\n')
print(type(python_list), type(ndarr))
위에서 확인할 수 있듯이, python list를 np.array()의 argument로 넣어 ndarray를 만들어낼 수 있다. 물론 2차원, 3차원, ..., n차원의 ndarray도 만들어낼 수 있다. 다음은 2차원 ndarray의 예시이다.
python_list = [[1,2],[3,4]]
ndarr = np.array(python_list)
print("python_list:", python_list)
print("ndarr:", ndarr, '\n')
np.zeros()¶
zeros라는 단어에서 볼 수 있듯이, 0으로 채워진 ndarray를 만들어낸다. np.array에서는 ndarray에 들어갈 값을 정해줬지만, np.zeros()에서는 이미 들어갈 값이 0으로 정해졌으므로 어떤 모양의 ndarray를 만들어줄지 결정해주면 된다.
numpy.zeros(shape, dtype=float, order='C')¶
다음은 1차원 np.zeros()를 만든 예시이다. shape을 통해 ndarray의 모양을 결정해주는데, 이 shape은 2X3 ndarray라면 (2,3)처럼 넣어줘야하기 때문에 tuple 또는 list형태로 넣어준다. 하지만 많은 경우에 tuple 형태로 넣어준다.
zeros_np = np.zeros(shape = (10))
print(zeros_np)
위와 같이 1차원 ndarray를 모두 0으로 채워서 만들 수 있다. 이는 python list를 모두 0으로 채워넣어서 zero vector를 만들어내는 경우보다 훨씬 수월해서 많이 사용된다.
다음은 2차원 zero matrix를 만들어내는 예시이다.
zeros_np = np.zeros(shape = (2,3))
print(zeros_np)
ones_np = np.ones(shape = (11,))
print(ones_np)
ones_np = np.ones(shape = (3,4))
print(ones_np)
full_np = np.full(shape = (6,), fill_value = 3)
print(full_np)
import math
PI = math.pi
full_np = np.full(shape = (3,4), fill_value = PI)
print(full_np)
empty_np = np.empty(shape = (4,))
print(empty_np)
위의 예시에서 볼 수 있듯이 우리가 지정되지 않은 값들이 들어있는 것을 알 수 있는데, 이 np.empty()는 전에 memory에 들어있던 값들을 유지한테 형태만 잡아주기 때문에 초기에는 쓰레기 값들이 채워져있는 것을 알 수 있다.
empty_np = np.empty(shape = (3,4))
print(empty_np)
'NumPy Master Class' 카테고리의 다른 글
Chapter1 ndarray: Notebook6 Reshape Resize and Vectorization (0) | 2020.01.08 |
---|---|
Chapter1 ndarray: Notebook5 ndarray Indexing and Slicing2 (0) | 2020.01.08 |
Chapter1 ndarray: Notebook4 ndarray Indexing and Slicing (0) | 2020.01.08 |
Chapter1 ndarray: Notebook3 Information About ndarray (0) | 2020.01.08 |
Chapter1 ndarray: Notebook2 Making ndarray2 (0) | 2020.01.08 |