【发布时间】:2018-12-04 00:11:24
【问题描述】:
在看起来很简单的事情上遇到了一些麻烦。我想加入这两个数组以满足输出:
array([['category_1', '4500', '5000'], ['category_2', '3200', '5000'], ['category_3', '3000', '5000'], ['category_4', '2000', '5000']], dtype='<U8')
我有一些数据
data = np.array([['category_1', '4500', '5000'], ['category_2', '3200', '5000']])
我还有其他数据
other_data = np.array([['category_3', '3000', '5000'], ['category_4', '2000', '5000'])
当我执行此操作时出现此错误
np.concatenate(data, other_data)
TypeError: only integer scalar arrays can be converted to a scalar index
【问题讨论】:
-
试试
np.concatenate((data, other_data))。concatenate接受一个元组输入。 -
哇哦,好用!但为什么?但是,元组的定义没有括号。至少我是这么认为的。我可以把 a = 1, 2 和输出将是一个元组
-
因为这是 NumPy 定义其功能的方式:检查the docs。
-
在
np.concatenate(a, b)中,a,b是元组,但它被解包到函数的参数中。a对应于函数签名的(a1,a2...)参数,antb被视为axis参数(这就是它抱怨scalar index的原因)。concatenate不使用*args参数。
标签: python arrays numpy multidimensional-array concat