Python 2.7 检查两个数据帧是否已合并

Python 2.7 检查两个数据帧是否已合并,python-2.7,pandas,merge,Python 2.7,Pandas,Merge,假设我有数据帧df和df2。df2可能已经或可能尚未通过以下方式与df合并: df = df.merge(df2,how='left',left_index=True,right_index=True) 未合并时,它们应该没有共同的列名 检查df和df2是否已经合并的最干净的方法是什么?利用以下事实: 未合并时,它们应该没有共同的列名 检查df2中的任何列名是否存在于df中。为此,您可以利用DataFrame的“columns”属性 例如: # Create DataFrames with r

假设我有数据帧df和df2。df2可能已经或可能尚未通过以下方式与df合并:

df = df.merge(df2,how='left',left_index=True,right_index=True)
未合并时,它们应该没有共同的列名


检查df和df2是否已经合并的最干净的方法是什么?

利用以下事实:

未合并时,它们应该没有共同的列名

检查df2中的任何列名是否存在于df中。为此,您可以利用DataFrame的“columns”属性

例如:

# 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
更新:建议来自评论。请参见此处的类似选项:

合并和
索引。为空
以确定是否有公共列:

df.columns.intersection(df2.columns).empty

返回
True
表示没有公共列。

您希望
df.columns.intersection(df2.columns)。空
True