I 파이썬 사전 최 항목 두 소자 어레이 어디 다음과 같이 정의되어있다 :다차원 배열
mydict = {1: {1: [1, 2], 2: [3, 4]}, 2: {1: [5, 6], 2: [7, 8]}}
제가 지금 필요한 것은 모든 0 번째 요소를 형성하는 것이다 새로운 배열, 즉, [:, :, 0] 또는 [..., 0]를 사용해 [1,3,5,6]을 돌려주는 그러나 [:, :, 0] 또는 [..., 0]은이 경우 아래와 같이 작동하지 않습니다. 다음과 같은 출력을 제공
import numpy as np
import pandas as pd
a = np.array(pd.DataFrame.from_dict(mydict))
print a
는 :
[[[1, 2] [5, 6]]
[[3, 4] [7, 8]]]
은 이것이 2x2x2 배열 것 같다. 별도의 대괄호를 사용하여 해당 요소에 액세스하는 데 아무런 문제가 없습니다. 예 : [0] [0] [0]은 1을 반환합니다. 그러나 [0,0,0]은 오류를 발생시킵니다. 하지만 내가 필요로하는 것이 내 목표를 달성하기 위해 2x2x2 배열입니다 -
---------------------------------------------------------------------------
IndexError Traceback (most recent call last)
<ipython-input-150-f68aba7de42a> in <module>()
----> 1 a[0,0,0]
IndexError: too many indices for array
두 요소의 배열은 2 × 2 배열의 요소로 간주됩니다 것으로 보인다. 이 방법을 2x2x2 배열로 변환 할 수있는 방법이 있습니까?
@ 트렁크, 나는 혼란 스럽다고 생각합니다. 'a'는 3D numpy 배열입니다. 가장 안쪽에있는 원소가리스트 형이 아닌 경우'a [0,0,0]'가 완전하게 유효합니다. 'a [0,0] [0]'가 작동합니다. – wflynny
아, 그래, 네 말이 맞아. – trincot
귀하의 질문에 혼란이 있습니다. 먼저'[1,3,5,6]'과 같은 결과를 요구하지만, 2x2x2 배열을 요청합니다. 어느 쪽을 원하니? – trincot