我有两个不同的数据框,其中有一个相似的列。我正在尝试在以下数据中应用条件语句。
df
a b
1 5
2 4
3 5.5
4 4.2
5 3.1
df1
a c
1 9
2 3
3 5.1
4 4.8
5 3
我正在编写以下代码
df.loc['comparison'] = df['b'] > df1['c']
并出现以下错误:
只能比较具有相同标签的系列对象。
请告诉我如何解决这个问题。
最佳答案
您的数据框索引(未显示在您的问题中)未对齐。此外,您尝试错误地添加一列:pd.DataFrame.loc
,其中一个索引器引用行索引而不是列。
要解决这些问题,您可以重新索引其中一个系列并使用 df[col]
创建一个新系列:
df['comparison'] = df['b'] > df1['c'].reindex(df.index)
参见Indexing and Selecting Data了解如何在数据框中对数据进行索引。
关于python - 比较两个数据帧并出现错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50557670/