我是一个有用的助手,可以进行文本翻译。
实际问题是我的数组a和b比3个坐标要长得多!
使用concatenate最好的结果是:
concatenate((a,b),axis=2)
它的结果是
array([[ 1, 1, 1, 10, 10, 10], [ 2, 2, 2, 20, 20, 20], [ 3, 3, 3, 30, 30, 30]])
这很不错,但是深度还不够。
此外,我尝试了另一个问题中的方法来获得所需的深度:
我在将数组以某种方式组合时遇到了一些小问题。 假设我们有
a=array([[1,1,1],[2,2,2],[3,3,3]])
b=array([[10,10,10],[20,20,20],[30,30,30]])
我希望得到
c=array([[[1,1,1],[10,10,10]],[[2,2,2],[20,20,20]],[[3,3,3],[30,30,30]]])
实际问题是我的数组a和b比3个坐标要长得多!
使用concatenate最好的结果是:
concatenate((a,b),axis=2)
它的结果是
array([[ 1, 1, 1, 10, 10, 10], [ 2, 2, 2, 20, 20, 20], [ 3, 3, 3, 30, 30, 30]])
这很不错,但是深度还不够。
此外,我尝试了另一个问题中的方法来获得所需的深度:
d=concatenate((a[...,None],b[...,None]),axis=2)
array([[[ 1, 10],
[ 1, 10],
[ 1, 10]],
[[ 2, 20],
[ 2, 20],
[ 2, 20]],
[[ 3, 30],
[ 3, 30],
[ 3, 30]]])
依然无法工作...
np.array(zip(a, b))
,对于更大的数组来说,这比@BiRico的方法慢了10倍以上。 - Jaime