根据唯一条目拆分具有相等值的行的值

Split value of a row with equal values based on the unique entry

我有一个如下所示的数据框:

Name  T1  T2  alpha
A     10  3   30
A     11  5   Nan
A     13  5   Nan
B     5   2   7
B     3   1   Nan

但是需要将 alpha 列分成相等的部分以替换 Name 列中每个唯一名称的 Nan 值,如下所示:例如 30 for [=对于存在 A 的相应行,16=] 变为 10

Name  T1  T2  alpha
A     10  3   10
A     11  5   10
A     13  5   10
B     5   2   3.5
B     3   1   3.5

我尝试使用 explode 但它没有像我希望的那样工作,这里的任何想法都会有所帮助

这将完成工作:

df['alpha'] = (df['alpha'] / df['T2']).ffill()

输出:

  Name  T1  T2  alpha
0    A  10   3   10.0
1    A  11   5   10.0
2    A  13   5   10.0
3    B   5   2    3.5
4    B   3   1    3.5

groupbytransform

df['alpha'] = pd.to_numeric(df['alpha'],errors = 'coerce').fillna(0).groupby(df['Name']).transform('mean')
df
Out[50]: 
  Name  T1  T2  alpha
0    A  10   3   10.0
1    A  11   5   10.0
2    A  13   5   10.0
3    B   5   2    3.5
4    B   3   1    3.5