我有两个不同的数据框和一个相似的列。我正在尝试在以下数据中应用条件语句。
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']
并得到以下错误:
只能比较标记相同的Series对象。
请告知我该如何解决此问题。
最佳答案
您的数据框索引(未显示在问题中)未对齐。此外,您尝试错误地添加列:具有一个索引器的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/