파이썬 활용 : Numpy

조쿨러·2024년 1월 1일

Python

목록 보기
1/12

1. Numpy

행렬 연산에 다양한 기능을 제공하는 라이브러리이다.
pip install numpy로 설치

  • Numpy 사용
import numpy as np

Numpy 배열

data = np.array([1,2,3])
data
-> array([1,2,3])
type(data)
-> numpy.ndarray
  • ndim 차원
data = np.array([1,2,3])
data1 = np.array([[1,2,3],[2,3,4]])

print(data.ndim)
print(data1.ndim)
->1 (1차원)
->2 (2차원)

Numpy 명령어

  • shape 크기 확인
data = np.array([1,2,3])
data1 = np.array([[1,2,3],[2,3,4]])

print(data.shape)
print(sata1.shape)
-> (3,)
-> (2,3)
  • dtype : 타입 확인
data = np.array([1,2,3])

data.dtype
-> dtype('int64')
  • dtype : 타입 지정
data = np.array([1,2,3], dtype = 'float')

print(data)
data.dtype

-> [1. 2. 3.]
-> dtype('float64')
  • size : 총 갯수
data = np.array([1,2,3])
data1 = np.array([[1,2,3],[2,3,4]])

print(data.size)
print(data1.size)

-> 3
-> 6
  • T 행,열의 교환
data = np.array([1,2,3])
data1 = np.array([[1,2,3],[2,3,4]])

print(data.T)
print(data1.T)

-> [1 2 3]
-> [ [1 2]
     [2 3]
     [3 4]]
  • arange()-range()와 비슷
  • np.arange(start, end, step)
data = np.arange(10)
data1 = np.arnage(0,10,2)

print(data)
print(data1)

-> [0 1 2 3 4 5 6 7 8 9]
-> [0 2 4 6 8]
  • linspace()
  • np.linspace(start, end count)
data = np.linsapce(0,10,3)
print(data)

data1 = np.linsapce(0,10,5)
print(data1)

-> [ 0. 5. 10. ]
-> [ 0. 2.5 5. 7.5 10.]
  • eye() : 대각으로 1로 치워진 행렬
np.eye(3)

-> array([[1., 0., 0.],
		  [0., 1., 0.],
          [0., 0., 1.]])
  • zeros() : 0으로 채워진 행렬
np.zeros(shape = (2,3))

-> array([[0., 0., 0.],
		  [0., 0., 0.]])
  • ones() : 1로 채워진 행렬
np.ones(shape = (2,3))

-> array([[1.,1.,1.],
		  [1.,1.,1.]])
  • full() : 지정값으로 채워진 행렬
np.full(shape=(2,3), fill_values = 3)

-> array([[3, 3, 3],
		  [3, 3, 3]])
  • random.randn() : 정규분포범위의 난수생성
np.random.randn(10)

-> array([ 1.12599437, 0.59247069, 0.38696838, ...)
  • reshape : 형태변경
import numpy as np

data = np.array([1,2,3,4,5,6,7,8,9])
result = data.reshape(3,3)
result

-> array([[1,2,3],
		  [4,5,6],
          [7,8,9]])
  • Numpy 연산 : 합
data1 = np.array([[1,2],[3,4]))
data2 = np.array([[5,6],[7,8]])

data1 + data2

-> array([[6, 8],
		  [10, 12]])
  • Numpy 연산 : 곱하기
data1 = np.array([[1,2],[3,4]])
data2 = np.array([[5,6],[7,8]])

data1 * data2

-> array([ 5, 12],
		 [21, 32]])
  • Numpy 연산 : 나누기
data1 = np.array([[1,2],[3,4]])
data2 = np.array([[5,6],[7,8]])

data1 / data2

Numpy 통계

  • sum() : 합계
1) 전체 합계
data = np.array([[1,2,3,4,5],[10,11,12,13,14]])
data.sum()

-> 75

2) 열의 합계
data.sum(axis=0)

-> array([11,13,15,17,19])

3) 해의 합계
data.sum(axis=1)

-> array([15,60])
  • mean() : 평균
data = np.array([[1,2,3,4,5],[10,11,12,13,14]])
data.mean()

-> 7.5
  • min() : 최소값
data = np.array([[1,2,3,4,5],[10,11,12,13,14]])
data.min()

-> 1
  • max() : 최대값
data = np.array([[1,2,3,4,5],[10,11,12,13,14]])
data.max()

-> 14
  • var() : 분산(데이터가 평균으로부터 얼마나 떨어져있는지 지표)
data = np.array([[1,2,3,4,5],[10,11,12,13,14]])
data.var()

-> 22.25

colab 실습
https://colab.research.google.com/drive/1BLgNZvJXMeulfevez5pkpuDdjYeYyV3Q?usp=sharing

profile
지지 않기

0개의 댓글