【发布时间】:2019-07-02 14:42:13
【问题描述】:
我有 K 个特征向量,它们都共享维度 n,但具有可变维度 m (n x m)。他们都住在一个列表中。
to_be_padded = []
to_be_padded.append(np.reshape(np.arange(9),(3,3)))
array([[0, 1, 2],
[3, 4, 5],
[6, 7, 8]])
to_be_padded.append(np.reshape(np.arange(18),(3,6)))
array([[ 0, 1, 2, 3, 4, 5],
[ 6, 7, 8, 9, 10, 11],
[12, 13, 14, 15, 16, 17]])
to_be_padded.append(np.reshape(np.arange(15),(3,5)))
array([[ 0, 1, 2, 3, 4],
[ 5, 6, 7, 8, 9],
[10, 11, 12, 13, 14]])
我正在寻找一种巧妙的方法来对这些 np.array 的行进行零填充,以使它们都共享相同的维度 m。我试过用 np.pad 解决它,但我还没能想出一个漂亮的解决方案。任何朝着正确方向的帮助或轻推将不胜感激!
结果应该使数组看起来像这样:
array([[0, 1, 2, 0, 0, 0],
[3, 4, 5, 0, 0, 0],
[6, 7, 8, 0, 0, 0]])
array([[ 0, 1, 2, 3, 4, 5],
[ 6, 7, 8, 9, 10, 11],
[12, 13, 14, 15, 16, 17]])
array([[ 0, 1, 2, 3, 4, 0],
[ 5, 6, 7, 8, 9, 0],
[10, 11, 12, 13, 14, 0]])
【问题讨论】:
-
您想将填充数组分开,还是加入更大的数组?
-
加入了一个更大的数组,这只是由 np.concatenate(padded_features) 完成的。选择的答案就像一个魅力
标签: python numpy zero-padding