如何在熊猫数据框中的每一行上使用Apply在函数中使用shift()和rolling()

时间:2019-06-25 20:18:29

标签: python pandas

我正在尝试根据一些计算来创建新列... 使用平移和滚动时,我会不断获得

ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().

非常感谢您的帮助。

当我使用任何一个或所有新的calumn时,总是总是True或All False ...这不是正确的逻辑。


def myFunction(row):
      if (row.Col1 > 0) & (row.Col1 > row.Cal2) & (row.Col1 > row.Cal1.shift().rolling(3).min()):
        myReturn1 = True
        myReturn2 = True

      else:
        myReturn1 = False
        myReturn2 = False

      return myReturn1 , myReturn2


df['myReturn1'] ,df['myReturn2'] = myFunction(df)

我正在接受两个新列,它们的混合值分别为TrueFalse

但是我只会得到Ture或False。哪个不正确?

0 个答案:

没有答案