넘파이에서 행렬 만들기

import numpy as np # 보통 np 라는 이름으로 많이 사용합니다.

verctor = np.array([1, 2, 3, 5])
matrix = np.array([[1, 2, 3, 5], [1, 4, 2, 3]])

list1 = [3, 2, 5, 4]
mat1 = np.array(list1) # 리스트를 넘파이 ndarray로 변환
list2 = mat1.tolist() # ndarray를 리스트로 변환

특별한 배열 만들기

# 0 또는 1로 채워진 행렬 만들기
zero = np.zeros(4, 5) # 행, 렬
one = np.ones(5, 4)

# 대각 성분이 1인 대각 행렬 만들기
identity1 = np.identity(n=5) 
identity2 = np.eye(N=3, M=5, k=1) #행, 렬, 시작점

연속된 값이 있는 배열 만들기

arange1 = np.arange(3, 20, 2) # 3부터 19까지 step=2로 배열만들기
lin1 = np.linspace(3, 20, 5) # 3부터 30까지 숫자를 5개로 분할한 배열만들기

넘파이의 자료형

ndarr2 = np.array([1, 2, 3.14, 4])
print(ndarr2)
print(type(ndarr2))
print(type(ndarr2[0]))
print(type(ndarr2[2]))
# 분명 1 은 int형임에도 불구하고 float로 타입이 바뀜.

ndarr3 = np.array([1, 2, 3.14, True])
print(ndarr3)
print(type(ndarr3))
print(type(ndarr3[2]))
print(type(ndarr3[3]))
# True는 1로 변환됨.

ndarr4 = np.array(['1', 2, 3.14, True])
print(ndarr4)
print(type(ndarr4))
print(type(ndarr4[0]))
print(type(ndarr4[1]))
# 단 하나의 str이라도 있으면 전부 str로 바뀜.(우선순위 높음!)

ndarr3 = np.array([1, 2, 3.14, True], dtype=int)
# 모든 요소를 int형으로 변환
print(ndarr3)
print(type(ndarr3))
print(type(ndarr3[2]))
print(type(ndarr3[3]))

ndarr4 = np.array(['1', 2, 3.14, True], dtype=int)
print(ndarr4)
print(type(ndarr4))
print(type(ndarr4[0]))
print(type(ndarr4[1]))
# 다만 int 변환 가능하다면 dtype을 지정해 저장가능

자료형은 배열내에서 dtype= … 으로 표현되고 종류는 다음과 같다