일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Django
- 밑바닥부터 시작하는 딥러닝2
- 군집화
- 결정계수
- 머신러닝
- 회귀분석
- 최소자승법
- 밑바닥부터 시작하는 딥러닝
- 텍스트 분류
- 기술통계학
- 파이썬 pandas
- F분포
- 코사인 유사도
- 차원축소
- 오래간만에 글쓰네
- student t분포
- 은준아 화이팅
- 모두의 딥러닝
- 다층 퍼셉트론
- 가설검정
- 텐서플로2와 머신러닝으로 시작하는 자연어처리
- 자연어 처리
- 구글 BERT의 정석
- 기초통계
- Pandas
- rnn
- word2vec
- numpy
- 히스토그램
- 감성분석
- Today
- Total
데이터 한 그릇
넘파이 배열 나누고 합치기 본문
array 쪼개기
a = np.arange(24)
a
1차원 배열 생성
a = np.split(a,2)
default는 axis = 0임
나누면 행으로 2개로 나뉘어지게 됨
array 합치기
hstack, vstack
쪼갰으면 합쳐보자
a = np.arange(24)
x,y,z = np.split(a,3)
split으러 3개로 일단 나눈다. 행기준
np.hstack((x,y))
수평으로 쭉 이어 붙여진다
1,2,3,4,5,6,7,8,8,~~ 결과는 1차원 배열이다
np.vstack((x,y))
수직으로 이어붙여준다. 따라서 데이터는 2차원 배열이된다.
stack
axis = 0부터 합쳐진다.
a = np.arange(16).reshape(4,4)
a
배열 생성
np.split(a,2) #axis = 0으로 고정 되어있음
x,y = np.split(a,2,axis=1)
행기준 2 개로 나눠도 보고 열기준으로도 나눠도 봄
열 기준으로 나눈걸 변수에 넣기
np.stack((x,y)).shape #axis = 0
stack으로 합쳐지면 차원으로 합쳐준다.
axis = 0이 default이다.
np.stack((x,y), axis = 1)
axis = 1은 여기서는 행을 의미 따라서 행을 기준으로 합쳐줌
np.stack((x,y),axis = 2)
axis = 2는 열을 기준으로 합침
정리하면 배열을 나누는 함수는 np.split(a,2) 이다.
axis를 0, 1로 하는지에 따라서 행과 열로 나눌지 결정한다.
배열을 합치는 함수는 stack, hstack, vstack 세 개가 있음
stack은 3차원으로 합칠수 있고, 행과 열로도 합칠 수 있음
np.stack((x,))
stack이 차원을 높여준다는 것을 활용하여 3차원으로 만들 때 위의 코드처럼 칠 수 있다.
(default 가 axis = 0 이기 때문에)
concatenate
배열을 합치는 다른 함수
np.concatenate((x,y)) #행으로 합치기
기본 axis = 0으로 행으로 되어 있음
따라서 행으로 붙이게 됨
np.concatenate((x,y),axis=1)
열을 기준으로 붙임
차원 확장
reshape, stack, newaxis
a = np.arange(12).reshape(3,4)
reshape로 차원 확장 가능
np.stack((a,))
stack이 차원을 확장하는 특징이 있기 때문에 이 방법으로 차원 확장
a[np.newaxis]
a[np.newaxis].shape
a가 본래 (3,4) 인데 newaxis로 인해서 차원이 늘어나서 (1,3,4) 가 된다.
a[np.newaxis,:,:]
이 코드랑 의미가 같다.
a[:,np.newaxis,:]
행을 기준으로 차원을 늘리기
a[:,:,np.newaxis]
열을 기준으로 차원을 늘리기
'Python > 넘파이(numpy)' 카테고리의 다른 글
넘파이)구조화된 배열 (0) | 2021.06.08 |
---|---|
넘파이)차원확대,차원교환 (0) | 2021.06.08 |
넘파이) 행렬 배치, 연산 (0) | 2021.06.07 |
넘파이 시작하기 2 (0) | 2021.06.02 |
넘파이 시작하기 (0) | 2021.06.02 |