我有多个包含不同数据的数据框,但都有一个日期列。我需要确保每个数据帧的日期列完全匹配(数据/行等),例如:
if df1['Date'] == df2['Date'] == df3['Date']:
我一生都无法弄清楚这一点。
我想只是比较它们并产生真/假并检查
(np.where(df1['Date'] == df2['Date'], 'True', 'False')
但这似乎效率低下。
感谢任何帮助。
提前致谢。
编辑: Shubham 指出使用
df1['Date'] == df2['Date']
但是这会产生错误
if df1['Date'] == df2['Date']:
The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
我研究了它,当使用 and/or 时,你可以更改为 &/|以避免错误,但我不知道如何使这个 if 语句起作用。
谢谢
最佳答案
对于您遇到的错误,请使用 .all()
if (df1['Date'] == df2['Date']).all():
使用 np.where 就可以,还可以使用 isin: df1['Date'].isin(df2['Date'])
并使用 value_counts 检查是否有任何不匹配的日期
False not in df1['Date'].isin(df2['Date']).value_counts()
关于python - 如何检查数据框中的一列是否完全等于另一个数据框中的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60341225/