Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 |
Tags
- insert()
- 덴드로그램
- sklearn
- DataAccess
- hierarchical_clustering
- pandas
- append()
- dendrogram
- 최솟값
- 반복문
- function
- nan
- count()
- wcss
- IN
- 분류 결과표
- Machine Learning
- Python
- numpy
- 최댓값
- data
- matplotlib
- DataFrame
- elbow method
- len()
- list
- string
- analizer
- Dictionary
- del
Archives
- Today
- Total
개발공부
[Python] Numpy (넘파이) 어레이 만드는 방법(0, 1, 정수, 실수, 랜덤) 본문
NUMPY
NumPy는 다차원 배열을 처리할 수 있는 선형대수학(Linear Algebra) 라이브러리입니다.
- 다음이 실행이 안되면 아나콘다프롬프트에서 conda install numpy 를 실행하여 설치합니다.

넘파이는 아래와 같이 선언하여 사용할 수 있다.
import numpy as np
넘파이 어레이 생성
np.array()
>>> a = [1, 2, 3, 4, 5]
>>> b = np.array(a)
>>> b
array([1, 2, 3, 4, 5])
>>> b = np.array([[1,2],[3,4]])
>>> b
array([[1, 2],
[3, 4]])
>>> b.size #(총 데이터의 개수)
4
>>> len(b)
2
>>> b.shape # (행의 개수, 열의 개수)
(2, 2)
>>> b.dtype # 데이터 타입
dtype('int32')
>>> b.ndim #차원의 수
np.zeros()
- 내부를 0으로 채운 넘파이 어레이 생성
# 3행 4열을 가진 0으로만 되어있는 행렬 만들기 ( 2차원 배열)
>>> K = np.zeros( (3, 4) )
array([[0., 0., 0., 0.],
[0., 0., 0., 0.],
[0., 0., 0., 0.]])
# 데이터가 7개가 모두 0인 1차원 배열 만들기
>>> np.zeros(7)
array([0., 0., 0., 0., 0., 0., 0.])
np.ones()
- 내부를 0으로 채운 넘파이 어레이 생성
# 모든 데이터를 1로하여, 1이 8개짜리 넘파이 배열을 만들기
>>> np.ones(8)
array([1., 1., 1., 1., 1., 1., 1., 1.])
# 3행 5열짜리 1로 채워진 행렬을 만들기
>>> np.ones((3, 5))
array([[1., 1., 1., 1., 1.],
[1., 1., 1., 1., 1.],
[1., 1., 1., 1., 1.]])
np.full()
- 특정 값으로 채워진 넘파이 어레이 생성
# 6으로만 채워진 10개짜리 1차원 배열을 만들기
>>> np.full(10, 6)
array([6, 6, 6, 6, 6, 6, 6, 6, 6, 6])
# 6으로만 채워진 2행 3열짜리 행렬을 만들기
>>> np.full((2, 3), 6)
array([[6, 6, 6],
[6, 6, 6]])
np.arange(start, stop, step)
- range()로 만들어진 숫자 리스트를 넘파이 어레이로 생성
- 정수의 배열을 얻고자 할때 사용
# 0부터 9까지의 숫자로 채워진 1차원 배열
>>> np.arange(9+1)
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
# # 4부터 12까지의 정수로 채워진 1차원 배열
>>> np.arange(4, 12+1)
array([ 4, 5, 6, 7, 8, 9, 10, 11, 12])
# 3부터 20까지의 정수중, 홀수로만 채워진 1차원 배열
>>> np.arange(3, 20+1, 2)
array([ 3, 5, 7, 9, 11, 13, 15, 17, 19])
np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None, axis=0)
- 실수의 배열을 얻고자 할때 사용
- start부터 stop까지 num의 갯수만큼 랜덤한 실수로 채워진 배열을 생성
# 0부터 25까지의 실수 10개로 이루어진 넘파이 어레이 생성
>>> np.linspace(0, 25, 10)
array([ 0. , 2.77777778, 5.55555556, 8.33333333, 11.11111111,
13.88888889, 16.66666667, 19.44444444, 22.22222222, 25. ])
# endpoint = False 면 기준이 되는 양끝값을 제외한 실수로 채워진다
>>> np.linspace(0, 25, 10, endpoint = False )
array([ 0. , 2.5, 5. , 7.5, 10. , 12.5, 15. , 17.5, 20. , 22.5])
np.random.random()
- 0 - 1 사이의 임의의 값으로 채워진 배열을 생성한다.
#총 8개의 0~1 사이의 수로 이루어진 1차원 배열 생성
>>> np.random.random(8)
array([0.96453049, 0.87545978, 0.29065312, 0.13664617, 0.62877984,
0.40001004, 0.07078882, 0.93963641])
# (3, 4)의 형을 가진 0~1 사이의 수로 이루어진 배열 생성
>>> np.random.random((3, 4))
array([[0.91090846, 0.92943032, 0.82455363, 0.04541904],
[0.97921768, 0.40729191, 0.73913105, 0.23626899],
[0.76432667, 0.36933886, 0.71950602, 0.81522966]])
np.random.randint(start, stop, size = shape)
- start와 stop사이의 정수 값으로 이루어졌고, size 형을 가진 배열 생성
# size를 정의하지 않으면 랜덤정수값 1개를 생성
>>> np.random.randint(1, 6)
4
# 1-6 범위의 랜덤한 정수 11개를 가진 1차원 배열 생성
>>> np.random.randint(1, 6, 11)
array([5, 3, 2, 4, 4, 5, 4, 1, 3, 4, 3])
# 1-6 범위의 랜덤한 정수로 이루어진 (3, 4) 의 형을 가진 배열 생성
>>> np.random.randint(1, 6, (3, 4))
array([[2, 2, 2, 4],
[4, 5, 1, 5],
[2, 5, 5, 4]])
np.random.normal(mean, standard deviation, size=shape)
- 정규분포를 만족하는 랜덤값으로 채우기
# 평균 170, 표준편자 10의 정규분포를 만족하는 값 1개 생성
>>> np.random.normal( 170, 10)
166.46290322335383
# 평균 170, 표준편자 10의 정규분포를 만족하는 값 4개로 이루어진 1차원 배열 생성
>>> np.random.normal( 170, 10, 4)
array([156.01385665, 170.22139075, 164.56378747, 167.66453062])
# 평균 170, 표준편자 10의 정규분포를 만족하는 값으로 이루어진 (2,3)모양 배열 생성
>>> np.random.normal( 170, 10, (2,3))
array([[181.68883625, 187.75348056, 159.06727022],
[170.63801411, 147.85398391, 152.64217368]])'Python > Numpy' 카테고리의 다른 글
| [Python] Numpy 항목 삭제하기 delete (0) | 2022.04.28 |
|---|---|
| [Python] Numpy 최댓값, 최솟값의 인덱스 구하기 (0) | 2022.04.28 |
| [Python] Numpy 조건을 만족하는 데이터 구하기 (0) | 2022.04.28 |
| [Python] Numpy 최댓값, 최솟값, 전체 합, 전체 평균, 표준편차, 중앙 값 구하기 (0) | 2022.04.28 |
| [Python] Numpy 형태를 바꿀 수 있는 reshape() (0) | 2022.04.28 |