Base/Python

[Python] Numpy의 reshape 통한 차원 변경(재배열)

반응형

차원 바꾸기

 

# reshape

reshape를 통해 차원을 지정해줄 수 있다.

기본적으로 Numpy를 import를 해주자.

이 함수는 변수의 형태를 보기 위해서 만든 함수이다.

 

이렇게 1차원인 np가 있다. 이 값을 형태를 변경해보자.

 

위와 같이 변수명.reshape를 작성하고 내가 원하는 형태의 행열의 값을 입력한다. 여기서는  4,3이라고 작성하면 4행 3열의 2차원 np가 생긴다.

 

 

또한 위와같이 2,2,-1라고 작성하면 2가지의 차원 / 2행 /  -1이라는 것은 나머지를 맞춰서 넣는다는 뜻으로 12개의 값들이 앞에서 선행되었던 차원과 행에 맞춰서 들어간다. 이렇게 3차원의 np가 생긴다.

 

# flatten() , ravel()

차원에 대해서 무조건 1차원을 하기 위해서는 flatten() 과 ravel()을 사용한다.

 

위 같은 형태의 배열이 있을 때

 

flatten 과 ravel을 이렇게 사용한다.

 

만약 원본과 다르게 새 값을 만들기 위해서는 copy() 명령어를 쓴다. 

 

반응형