我有两个数组A1
和A2
,形状分别为(1,3)
和(1,4)
.我想把这两个数组附加到一个列表中.我给出了预期输出.
import numpy as np
A1=np.array([[128, 129, 131]])
A2=np.array([[128, 131, 132, 140]])
预期输出为
A=[array([[128, 129, 131]]), array([[128, 131, 132, 140]])]
我有两个数组A1
和A2
,形状分别为(1,3)
和(1,4)
.我想把这两个数组附加到一个列表中.我给出了预期输出.
import numpy as np
A1=np.array([[128, 129, 131]])
A2=np.array([[128, 131, 132, 140]])
预期输出为
A=[array([[128, 129, 131]]), array([[128, 131, 132, 140]])]
由于numpy
允许快速数值操作,它期望所有数组的形状相同,因此在您的情况下(即A1.shape = 3
和A2.shape = 4
),您将无法将组合数组转换为numpy
.您唯一可以做的是使用python
list
对象,如@hapulj所指:
C = [A1, A2]
但是它肯定要比使用numpy
慢,因为标题后面附加了python
来表示列表(more on that here)中的对象,因此我建议确保数组的长度相同(例如,如果在您的情况下有意义的话,可以添加0
),然后使用类似以下内容:
import numpy as np
A1=np.array([[128, 129, 131, 0]])
A2=np.array([[128, 131, 132, 140]])
C = np.array([A1, A2], dtype=np.int16)
输出:
array([[[128, 129, 131, 0]],
[[128, 131, 132, 140]]], dtype=int16)
干杯