将numpy函数应用于pandas DataFrame

时间:2014-01-21 14:43:44

标签: python numpy pandas

我有一个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的第一个参数传递;不是吗?如果是这样,有一种比我以前的解决方案更好的解决方法吗?

0 个答案:

没有答案