如何在熊猫中使用.isin和groupby

时间:2018-06-26 06:44:26

标签: python duplicates pandas-groupby

P_id   F_name      L_name     DOB        dup_id
25     John        Doe        23/1/90     29  
28     John        Doe        23/1/90     29  
29     John        Doe        23/1/90     0  
35     Jane        Dawson     20/1/68     0  
47   Jane Matilda  Dawson     20/1/68     35
120    Shane         Jack     12/1/97     0
50     Belinda     Ada        11/11/11    145  
145    Belynda     Ada        11/11/11    0
65     Shayne M.   Jack       12/1/97     120

我正在尝试检查是否在p_id中找到了dup_id,然后将dup_id和'p_id'行分组在一起。通过为每个组分配唯一的编号来对它们进行分组。

for ind, val in df[p_id'].iteritems(): if val in df['dup_id']: df5 = df.assign(id=(df['F_name'] + '_' + df['L_name']).astype('category').cat.codes)

上面的代码不起作用,这只是我的尝试。 该表使用p_id链接到数据库中的其他表,我将需要合并或联接它们

uid(新id)将用于对记录进行分组。我本来可以按fname和lname对它们进行分组,但是由于名称条目不一致,我决定使用dup_id和p_id,这更可靠

新输出

P_id   F_name      L_name     DOB        dup_id       uid
25     John        Doe        23/1/90     29            1
28     John        Doe        23/1/90     29            1 
29     John        Doe        23/1/90     0             1  
35     Jane        Dawson     20/1/68     0             2  
47   Jane Matilda  Dawson     20/1/68     35            2
120    Shane       Jack       12/1/97     0             3
65     Shayne M.   Jack       12/1/97     120           3
50     Belinda     Ada        11/11/11    145           4 
145    Belynda     Ada        11/11/11    0             4

0 个答案:

没有答案