计算数据框列中存在于另一个数据框列中的值数



我有两个数据帧:

df1:

<表类> 指数 日期 tbody><<tr>02016-03-21 20:10:0012016-03-22 21:09:0022016-05-03 17:05:00

解决问题的最简单方法是使用set交集(从集合中找到公共元素)。如:

df1=pd.DataFrame({"date":['2016-03-21 20:10:00','2016-03-22 21:09:00','2016-05-03 17:05:00']})
df2=pd.DataFrame({"date":['2016-03-21 20:10:00','2016-03-21 21:00:00',
'2016-03-22 21:09:00','2016-05-03 17:05:00','2017-06-01 16:10:00']})
print(len(set(df1.date) & set(df2.date))) # 3

这将把指定的列转换为python-set,并找到它们之间的共同点。


如果你想使用Pandas,那么你可以使用Pandas .merge()来获得基于列的公共行。

df3 = pd.merge(df1, df2)
print(len(df3)) # 3

并使用len函数统计常见行。

您可以使用isin功能:

len(df1[df1.Date.isin(df2.Date)])

输出:

3

相关内容

  • 没有找到相关文章

最新更新