在Python中重新格式化表格

时间:2016-09-28 07:38:32

标签: python numpy

我在Python脚本中有一个表,其中numpy的形状如下:

[array([[a1, b1, c1], ..., [x1, y1, z1]]), 
 array([a2, b2, c2, ..., x2, y2, z2])
]

我想将其重塑为这样的格式:

(array([[a2],
        [b2],
         .
         .
         .
        [z2]],
        dtype = ...),
 array([[a1],
        [b1],
         .
         .
         .
        [z1]])
)

说实话,我对不同的括号也很困惑。 array1,array2]是一个数组列表,对吧?什么是(array1,array2),那么?

2 个答案:

答案 0 :(得分:1)

圆括号(1, 2)tuples,方括号[1, 2]lists。要转换数据结构,请使用expand_dimsflatten

import numpy as np

a = [
    np.array([[1, 2, 3], [4, 5, 6]]),
    np.array([10, 11, 12, 13, 14])
    ]
print(a)

b = (
    np.expand_dims(a[1], axis=1),
    np.expand_dims(a[0].flatten(), axis=1)
    )

print(b)

答案 1 :(得分:1)

 #[array1,array2] is a python list of two numpy tables(narray)
 #(array1,array2) is a python tuple of two numpy tables(narray)
 tuple([array.reshape((-1,1)) for array in your_list.reverse()])