我有一个DataFrame,其中每个元素都是一个numpy数组,我想将它们应用于numpy函数。
这是一个例子:
a=pd.DataFrame({'x':[np.array([1,2]),np.array([10,20])],'y':[np.array([3,4]),np.array([30,40])]})
现在让我们尝试在np.dot
axis=1
如果我尝试
a.apply(lambda row: np.dot(row[0],row[1]), axis=1)
我得到了正确的结果。顺便说一句,我不明白为什么这个更简单的路线:
a.apply(np.dot, axis=1)
以TypeError退出:
TypeError :("必需的参数' b'(pos 2)未找到",u'发生于 索引0')
我猜测是因为所有的矢量都作为dot的第一个参数传递;不是吗?如果是这样,有一种比我以前的解决方案更好的解决方法吗?