我正在尝试连接两个数据帧,如果发生重复,我想考虑具有列C最大值的行 我尝试了以下命令:
df = pd.concat([df1, df2]).max(level=0)
因此,如果两行在A和B列中具有相同的值,那么我将以C列具有最大值的那一行为准。
答案 0 :(得分:0)
您可以按C列排序,然后按A和B列删除重复项:
df = pd.concat([df1, df2])\
.sort_values('C')\
.drop_duplicates(subset=['A', 'B'], keep='last')
您的尝试有一些误解:
pd.DataFrame.max
用于计算最大值,而不是过滤数据框。level
参数仅与MultiIndex
数据帧相关。