넘파이
1. 넘파이 가져오기
import numpy as np
2. 넘파이 배열 생성하기
넘파이 배열을 만들 때는
np.array()
메서드를 이용
np.array()
: 파이썬의 리스트를 인수로 받아 넘파이 라이브러리가 제공하는 특수한 형태의 배열(numpy.ndarray)을 반환함
x = np.array([1.0, 2.0, 3.0])
print(x)
# [1. 2. 3.]
print(type(x))
# <class 'numpy.ndarray'>
3. 넘파이의 산술 연산
배열끼리의 원소 수가 같아야함.
스칼라 값과의 산술 연산의 경우
브로드캐스트
기능이 작동함(5번 브로드캐스트 참고)
x = np.array([1.0, 2.0, 3.0])
y = np.array([2.0, 4.0, 6.0])
print(x+y)
# array([3., 6., 9.])
print(x-y)
# array([-1., -2., -3.])
print(x*y)
# array([2., 8., 18.])
print(x/y)
# array([0.5, 0.5, 0.5])
4. 넘파이의 N차원 배열
shape
: 행렬의 형상
dtype
: 행렬에 담긴 원소의 자료형
A = np.array([[1, 2], [3, 4]])
print(A)
# [[1 2] [3 4]]
print(A.shape)
# (2, 2)
print(A.dtype)
# dtype('int64')
B = np.array([[3, 0], [0, 6]])
print(A+B)
# array([[4, 2], [3, 10]])
print(A*B)
# array([[3, 0], [0, 24]])
5. 브로드캐스트
broadcast
형상이 다른 배열끼리 계산할 수 있는 넘파이의 기능
6. 원소 접근
X = np.array([[51, 55], [14, 19], [0, 4]])
print(X)
# [[51 55] [14 19] [0 4]]
print(X[0])
# array([51, 55])
print(X[0][1])
# 55
for row in X:
print(row)
# [51 55]
# [14 19]
# [0 4]
6-1. 평탄화
배열을 1차원 배열로 변환
X = np.array([[51, 55], [14, 19], [0, 4]])
X = X.flatten()
print(X)
# [51 55 14 19 0 4]
6-2. 인덱스로 원소 얻기
X = np.array([[51, 55], [14, 19], [0, 4]])
X = X.flatten()
print(X[np.array([0, 2, 4])])
# array([51, 14, 0])
6-3. 특정 조건을 만족하는 원소 얻기
X = np.array([[51, 55], [14, 19], [0, 4]])
X = X.flatten()
print(X>15)
# array([True, True, False, True, False, False], dtype=bool)
print(X[X>15])
# array([51, 55, 19])
'Study > ML, AL' 카테고리의 다른 글
[퍼셉트론] 퍼셉트론의 한계 (0) | 2021.04.15 |
---|---|
[퍼셉트론] 퍼셉트론이란 무엇일까 (0) | 2021.04.15 |
matplotlib을 사용해봅시다 (0) | 2021.04.14 |