【发布时间】:2017-08-16 17:15:33
【问题描述】:
我有两个相同股票的不同数据框,但一个数据框包含更多数据和不同的价格。 我想比较其中一列,看看它们的不同之处。 (以下是数据框的较小版本)
df
Date Open Close
2007-03-22 3.65 1.0
2007-03-23 3.87 1.0
2007-03-26 3.83 1.0
2007-03-27 3.61 1.0
2007-03-28 4.65 1.0
df2
Date Open Close
2007-03-22 3.15 1.0
2007-03-23 3.87 0.0
2007-03-26 3.33 0.0
2007-03-27 3.61 0.0
2007-03-28 4.65 0.0
由于其中一个数据框有更多日期,我尝试使用 loc 对其进行切片,然后使用布尔索引找出它们的不同之处。
我试过这样的
df.Open[df.loc['2010-01-04':, 'Open'] != df2.loc['2010-01-04':, 'Open']]
我只想比较两个数据框的“打开”列,并且只比较一个日期。我希望输出只是 df.Open 列(和索引),它们在各自的“打开”列中有所不同。
但我得到了错误,
pandas.core.indexing.IndexingError: Unalignable boolean Series key provided
【问题讨论】:
标签: python pandas dataframe indexing boolean