首页 > 解决方案 > 如何将转换应用于使用其他行的每一行

问题描述

我正在尝试清理下面的数据框:

col1, clo2
A,    1
A,    2
B,    3
B,    4

我想让它看起来像这样:

col1, clo2
A,    1
A,    1
B,    3
B,    3

基本上分组col1并将所有值col2转换为每个组的第一个值,但我想保留所有行(它们有我不能丢失的数据)。

R使用中,dplyr我会在 r 中执行以下操作以获得相同的结果:

data %>% group_by(col1) %>% mutate(col2 = first(col2))

标签: pandasdataframe

解决方案


我们有firsttransform( mutatein R) 在pandas

df.clo2=df.groupby('col1').clo2.transform('first')
df
Out[1024]: 
  col1  clo2
0    A     1
1    A     1
2    B     3
3    B     3

推荐阅读