2

我有一个考拉数据框,我想通过使用两列计算来添加一个新列。我有一个单独的函数来进行计算并返回每行的新列的值。计算函数有点复杂。

df.assign(new_column=lambda x: self.calculate(x.col1, x.col2))

我的问题是x.col1x.col2没有作为单独的行值传递,而是将整个列作为系列传递给计算函数,这会导致抛出 TypeError。

TypeError: float() argument must be a string or a number, not 'Series'

有人知道我如何解决这个问题吗?

谢谢

4

1 回答 1

0

您需要修改self.calculate函数以与Series.

在您的情况下,不要使用float()值,而是.astype(float)使用Series

于 2020-10-02T15:19:05.917 回答