有没有一种方法可以根据与Pandas中另一列关联的值来填充列?

时间:2019-02-15 18:53:27

标签: python excel pandas

我目前正在尝试使用一个非常大的数据集,但是在有效执行操作之前,我需要填充空白。我正在使用的模型示例类似于Ex1。“名称”仅在“项目”列中为每个“团队”填充1个值。

是否可以将“名称”(Name)列中的值分配给所有与“ Team”编号相关联的行,使其与示例2类似?我将在Excel文件中阅读。

我是熊猫的新手,我不确定要查找该答案的具体内容,所以我很抱歉以前是否曾问过这个问题。

Ex1

 Team    Item      Name
 1       Credit    
 1       Debit     Bob
 1       Etc       
 2       Credit    
 2       Debit     Steve
 2       Etc       

Ex2

 Team    Item      Name
 1       Credit    Bob
 1       Debit     Bob
 1       Etc       Bob
 2       Credit    Steve
 2       Debit     Steve
 2       Etc       Steve

1 个答案:

答案 0 :(得分:0)

您可以将groupbyffill().bfill()链一起使用。

df['Name']=df.groupby('Team').Name.apply(lambda x : x.ffill().bfill())
df
Out[262]: 
   Team    Item   Name
0     1  Credit    Bob
1     1   Debit    Bob
2     1     Etc    Bob
3     2  Credit  Steve
4     2   Debit  Steve
5     2     Etc  Steve