有没有办法把drop_duplicates和conditions一起使用?例如,让我们以以下数据帧为例:
import pandas as pd
df = pd.DataFrame({
'Customer_Name': ['Carl', 'Carl', 'Mark', 'Joe', 'Joe'],
'Customer_Id': [1000,None,None,None,50000]
})基于此数据帧,我想为Customer_Id和Customer_Name派生出一个具有不同行的数据帧
Customer_Id Customer_Name
0 1000 Carl
2 NaN Mark
5 50000 Joe不幸的是,我不能为此使用drop_duplicates方法,因为这个方法总是会删除第一个或最后一个重复的事件。
然而,在我的例子中,这是不同的(参见Carl和Joe)。此外,我不能删除Customer_Id列中没有条目的所有行,因为这也会删除Mark的条目。
我非常感谢大家的帮助。
发布于 2013-11-19 17:28:17
下面这个例子就是你的例子:
>>> df.groupby('Customer_Name').first().reset_index()
Customer_Name Customer_Id
0 Carl 1000
1 Joe 50000
2 Mark NaN但我必须检查first()是如何处理缺失值的,以确保它一致地工作。
发布于 2013-11-19 17:33:41
这将仅为您提供编号最高的Customer_Id或NaN (如果不可用
df.groupby('Customer_Name').Customer_Id.max().reset_index()
Customer_Name Customer_Id
0 Carl 1000
1 Joe 50000
2 Mark NaNhttps://stackoverflow.com/questions/20067264
复制相似问题