This may be done as follows:In [122]: A
Out[122]:
array([[[ 0, 1, 2],
[ 3, 4, 5],
[ 6, 7, 8]],
[[ 9, 10, 11],
[12, 13, 14],
[15, 16, 17]],
[[18, 19, 20],
[21, 22, 23],
[24, 25, 26]]])
In [123]: pd.DataFrame(A.reshape(-1,).reshape(A.shape[2], A.shape[0] * A.shape[1]).T)
Out[123]:
0 1 2
0 0 9 18
1 1 10 19
2 2 11 20
3 3 12 21
4 4 13 22
5 5 14 23
6 6 15 24
7 7 16 25
8 8 17 26
Horse:In [118]: A.reshape(-1,)
Out[118]: array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26])
In [119]: A.reshape(-1,).reshape(A.shape[2], A.shape[0] * A.shape[1])
Out[119]:
array([[ 0, 1, 2, 3, 4, 5, 6, 7, 8],
[ 9, 10, 11, 12, 13, 14, 15, 16, 17],
[18, 19, 20, 21, 22, 23, 24, 25, 26]])
In [120]: A.reshape(-1,).reshape(A.shape[2], A.shape[0] * A.shape[1]).T
Out[120]:
array([[ 0, 9, 18],
[ 1, 10, 19],
[ 2, 11, 20],
[ 3, 12, 21],
[ 4, 13, 22],
[ 5, 14, 23],
[ 6, 15, 24],
[ 7, 16, 25],
[ 8, 17, 26]])