我正在尝试将平均真实范围列添加到包含历史库存数据的数据框。计算熊猫数据框中的平均真实范围列
我使用至今的代码是:
def add_atr_to_dataframe (dataframe):
dataframe['ATR1'] = abs (dataframe['High'] - dataframe['Low'])
dataframe['ATR2'] = abs (dataframe['High'] - dataframe['Close'].shift())
dataframe['ATR3'] = abs (dataframe['Low'] - dataframe['Close'].shift())
dataframe['TrueRange'] = max (dataframe['ATR1'], dataframe['ATR2'], dataframe['ATR3'])
return dataframe
最后一行,包含max函数,给出了错误:
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
我已经在努力学习如何一派天解决这个错误,或者以更好的方式执行代码等等,并且找不到任何帮助我的东西。
在以下任何帮助,将不胜感激:
如何解决错误
如何做好代码以更好的方式 - 我的意思并不是说我有代码这样做,可能有更好的方法来做到这一点。
提前感谢。
感谢您的建议rde。我遇到过pd.max,但没有看到一种方法可以逐行使用它 – ironfish