Python-pandas:系列的真实价值不明确

时间:2018-12-18 09:37:15

标签: python pandas

我目前正在尝试将json文件(我已经可以在上面处理)的值与csv文件中的值(可能是问题)进行比较。我当前的代码如下:

     for data in trades['timestamp']:
        data = pd.to_datetime(data)
        print(data)
           if data == ask_minute['lastUpdated']:
             'do something'

我当前的打印(数据)如下:

2018-10-03 18:03:38.067000
2018-10-03 18:03:38.109000
2018-10-03 18:04:28
2018-10-03 18:04:28.685000

但是,我仍然无法比较CSV文件中的这些时间戳和Json文件中的这些时间戳。有人有主意吗? ValueError是

  

“:系列的真值不明确。请使用a.empty,a.bool(),a.item(),a.any()或a.all()。”

2 个答案:

答案 0 :(得分:0)

当您这样做:

data == ask_minute['lastUpdated']

您正在将两个pd.Series或一个pd.Series与一个值进行比较,因此您可能有多个True和多个False值,而必须这样做:< / p>

if (data == ask_minute['lastUpdated']).any()

if (data == ask_minute['lastUpdated']).all()

取决于您是否希望至少一个(any)或all值满足条件。

答案 1 :(得分:0)

我看到的问题是,即使您正在评估数据框中的一行,代码也知道一个数据框具有很多行的能力。该代码不仅假定您只需要存在的一行。您必须明确地告诉它。我解决它的方法是这样的:

if data.iloc[0] == ask_minute['lastUpdated']:

然后代码知道您正在选择存在的一行。

相关问题