여기 어레이로부터 그 출력을 생성하는 한 방법이다 :
>>> np.dstack((a1,b1)).transpose(2,0,1)
array([[[ 1, 2],
[ 3, 4]],
[[ 5, 6],
[ 7, 8]],
np.dstack
는 3 차원 배열을 생성하지만 축이 다른 순서로 판독 할 필요가있다. (0, 1, 2)
축의 순서가 (2, 0, 1)
으로 변경되었으므로 축을 전 환하고 교환해야합니다.
다음은 잠재적으로 유용 할 수 있지만 관련성이없는 배열을 연결하는 데 대한 정보입니다. (질문의 나의 오해가 지적되기 전에 입력했습니다.) 배열에 가입
한 가지 방법은 np.concatenate
을 사용하는 것입니다
는
>>> np.concatenate((a1, b1))
array([[1, 2],
[3, 4],
[5, 6],
[7, 8]])
이 다른 아래 하나의 스택. 배열을 나란히 배열하여 np.concatenate((a1, b1), axis=1)
과 연결할 수도 있습니다. (두 개 이상의 배열을 함수로 전달할 수 있습니다.)
다른 기능이 있습니다. 위의 두 작업은 각각 np.vstack((a1,b1))
및 np.hstack((a1,b1))
을 사용하여 수행 할 수 있습니다.
당신이 3D 배열의 배열에 참여하려면
, 당신은
np.dstack((a1,b1))
를 사용할 수 있습니다
array([[[1, 5],
[2, 6]],
[[3, 7],
[4, 8]]])
이 NumPy와 배열이, 파이썬 목록과 달리 동적으로 메모리에 성장할 수 없습니다 유의하십시오. 이러한 작업으로 인해 배열이 복사되고 새로운 메모리 블록이 더 큰 배열로 채워집니다. 배열이 큰 경우 비효율적 일 수 있습니다.
이것은 'numpy'에 새로 온 사람들에게 정말 좋은 정보입니다. 그러나이 솔루션들 중 어느 것도 필요한 출력을 제공하지 못한다는 사실을 알아 두십시오. – gg349
@ gg349 당신은 옳습니다. 나는 그 질문을 잘못 읽었습니다. 이 답변을 삭제하고 기회가있을 때 수정 해 보겠습니다. 감사! –
나는 대답이 머물러 있어야한다고 생각하며 OP에 대한 귀중한 정보이다 – gg349