Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将项附加到对象的数组中?_Python_Arrays_Append - Fatal编程技术网

Python 如何将项附加到对象的数组中?

Python 如何将项附加到对象的数组中?,python,arrays,append,Python,Arrays,Append,我在使用对象数组时遇到问题: 例如,我有: import numpy as np a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]], dtype = object) 现在我想在数组a中追加一行: b = np.array([[10, 11, 12, 13]], dtype = object) 追加后,我想要的输出是: a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12, 13]],

我在使用对象数组时遇到问题: 例如,我有:

import numpy as np
a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]], dtype = object)
现在我想在数组a中追加一行:

b = np.array([[10, 11, 12, 13]], dtype = object)
追加后,我想要的输出是:

a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12, 13]], dtype = object)

那么,有人能帮我吗?

试试numpy.append方法。示例如下:

import numpy as np
a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]], dtype = object)
b=np.append(a,[[11,12,13]], axis=0)
print (b)

在追加之前,应该检查两个数组的维度

您可以使用
print(myArray.shape)
获取维度

在这里,您希望将一行维度(1,4)附加到数组(3,3)

它不能按预期工作

所以我认为你首先要扩大你的数组的形状

例如:

import numpy as np
a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]], dtype = object)

a= np.concatenate((a,np.zeros((3,1))),axis = 1)
# now you have a (3,4) array thus you can easily add a (1,4) row
#Point 1

b = np.array([[10,11,12,13]])

a = np.concatenate((a,b))
#Point 2

我在这里使用了
np.concatenate
函数,但显然可以使用其他函数

输出

#Point 1 

[[1 2 3 0.0]
 [4 5 6 0.0]
 [7 8 9 0.0]]

#Point 2

[[1 2 3 0.0]
 [4 5 6 0.0]
 [7 8 9 0.0]
 [10 11 12 13]]

这回答了你的问题吗?您确定要将大小为4的列表附加到大小为3的列表数组中吗?如果要使用
dtype=object
,为什么首先要使用数组?我实际上使用的是MATLAB。在MATLAB中,我有一个单元数组,它可以显示[[1,2,3]、[4,5,6]、[7,8,9]、[10,11,12,13]]。所以我想把它翻译成python。我不确定dtype=object是否准确,所以有人能帮我吗?只需使用常规的
列表即可。通常这是正确的解决方案,但是在问题
b
中有4个元素,因此这不起作用。我实际使用的是MATLAB。在MATLAB中,我有一个单元数组,它可以显示[[1,2,3]、[4,5,6]、[7,8,9]、[10,11,12,13]]。所以我想把它翻译成python。我不确定dtype=object是否准确,有人能帮我吗?