假设我有DataFrames df和df2。 df2可能已经或可能没有与df通过
合并df = df.merge(df2,how='left',left_index=True,right_index=True)
当未合并时,它们应该没有共同的列名。
检查df和df2是否已合并的最简洁方法是什么?
答案 0 :(得分:1)
合并Index.intersection
和Index.empty
以确定是否存在共同的列:
df.columns.intersection(df2.columns).empty
返回True
表示没有共同的列。
答案 1 :(得分:0)
利用以下事实:
当未合并时,它们应该没有共同的列名。
检查df中是否存在df2中的任何列名称。为此,您可以使用"列" DataFrame的属性。
例如:
# Create DataFrames with respectively unique columns
df = pd.DataFrame([1,2,3], columns=['a'])
df2 = pd.DataFrame([4,5,6], columns=['b'])
# False; the DataFrames have not been mereged
not df.columns.intersection(df2.columns).empty
# Merge
df = df.merge(df2,how='left',left_index=True,right_index=True)
# True; the DataFrames have been merged
not df.columns.intersection(df2.columns).empty
更新:建议来自评论。请在此处查看类似选项:python: check if an numpy array contains any element of another array