In [1]: dd = {'one':np.arange(12).reshape(4,3),'two':np.arange(12).reshape(4,3)*2}
をキーの順序は問題ではない場合:
In [3]: dd.values()
Out[3]:
dict_values([array([[ 0, 1, 2],
[ 3, 4, 5],
[ 6, 7, 8],
[ 9, 10, 11]]), array([[ 0, 2, 4],
[ 6, 8, 10],
[12, 14, 16],
[18, 20, 22]])])
たちは
In [4]: np.array(dd.values())
Out[4]:
array(dict_values([array([[ 0, 1, 2],
[ 3, 4, 5],
[ 6, 7, 8],
[ 9, 10, 11]]), array([[ 0, 2, 4],
[ 6, 8, 10],
[12, 14, 16],
[18, 20, 22]])]), dtype=object)
list(values())
がよさそうだ(PY3に)望んでいないものを - のリストを与えます異なる方法で結合することができる配列
In [5]: np.array(list(dd.values()))
Out[5]:
array([[[ 0, 1, 2],
[ 3, 4, 5],
[ 6, 7, 8],
[ 9, 10, 11]],
[[ 0, 2, 4],
[ 6, 8, 10],
[12, 14, 16],
[18, 20, 22]]])
In [7]: np.array(list(dd.values()))[:,:,2]
Out[7]:
array([[ 2, 5, 8, 11],
[ 4, 10, 16, 22]])
np.concatenate(list(dd.values()),axis=0)
は3dの代わりに2dの配列を作成するので、[:,2]
は2dではなく1dになります。しかし、他の賢明な同じ。