如果pandas中的索引长度不相同,如何过滤行?

时间:2018-02-12 00:46:36

标签: python pandas

如果df_1中的值也大于或等于,我需要过滤一个pandas数据帧(df_2)的行。

df_1看起来像这样:

created_date    compare_date
2/10/18         2/11/18

df_2看起来像这样:

id   compare_date
12   2/10/18
13   2/11/18
14   2/9/18

我需要进行以下比较:df_1 ['compare_date']> = df_2 ['compare_date'],而df_2依次应如下所示:

id    compare_date
13    2/11/18

到目前为止我的代码:

df_1['Benchmark_Date'] >= df_2['Updated_Date']

我收到错误:

ValueError: Series lengths must match to compare

1 个答案:

答案 0 :(得分:0)

由于df_1只有一行,您应该将其单个值与df_2中的整个系列进行比较:

df_1['compare_date'].iloc[0] >= df_2['compare_date']

iloc[0]获取第一行(在这种情况下仅为行)。

以上将返回一个布尔系列;如果要提取匹配的行,请执行以下操作:

df_2[df_1['compare_date'].iloc[0] >= df_2['compare_date']]