我有两个数据帧:
df1:
<表类>
指数
日期
tbody><<tr>0 2016-03-21 20:10:00 12016-03-22 21:09:00 22016-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