본문으로 바로가기
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

 

 

 

 

 

np.ravel

np.ravel(a, order='C')

다차원 배열을 1차원으로 펼쳐줌.

 

order = 'C' 인 경우 row 우선 변경

order = 'F'인 경우 Column 우선 변경

 

 


flatten

다차원 배열을 1차원으로 펼쳐줌.

 

ravel 과의 차이점 : copy를 생성하여 변경함.

즉, 원본 데이터가 아닌 복사본을 반환.

 

order = 'C' 인 경우 row 우선 변경

order = 'F'인 경우 Column 우선 변경


ravel 을 사용하면 새롭게 생성한 변수를 수정하면 기존 행렬의 값에도 영향을 미침.

 

반면 flatten은 원본 행렬에 영향을 미치지 않음.

그래서 flatten 사용을 추천함. 

 

 


reshape

array의 shape를 다른 차원으로 변경

주의할 점은 reshape한 후의 결과의 전체 원소 개수가 이전 개수와 같아야 가능.

사용예시 ) 이미지 데이터 벡터화 - 이미지는 기본적으로 2,3차원이기에 트레이닝을 위해 1차원으로 변경하여 사용됨.

 

 

차원 지정 시, 최대 한칸은 -1로 대신하면 알아서 해당하는 정수를 찾아서 넣어준다.

수의 크기가 커질수록 해당하는 약수를 찾기 귀찮아져 -1을 쓰는 경우가 많다.

 

 

 

 

 

 

위 내용은 fastcampus 강의 내용을 정리한 것입니다.

'AI > 데이터분석' 카테고리의 다른 글

[Numpy] axis(축) 이해  (0) 2020.01.19
[Numpy] ndarray 기본 함수  (0) 2020.01.19
[Numpy] ndarray 인덱싱 & 슬라이싱  (0) 2020.01.18
[Numpy] random 서브 모듈 함수 이용  (0) 2020.01.18
[Numpy] numpy 모듈 & 함수  (0) 2020.01.18