Python 3.x 用组的现有值替换NaN

Python 3.x 用组的现有值替换NaN,python-3.x,pandas,replace,nan,Python 3.x,Pandas,Replace,Nan,如何通过查看列Name,用现有值替换这些NaN?对于CC我希望得到最大值(但是如果它太复杂,那么我可以选择23或45)。预期产出: Name Value 0 AA 33 1 AA 24 2 BB 23 3 BB NaN 4 CC NaN 5 CC 23 6 CC 45 谢谢 您可以分组并使用max进行变换,然后使用fillna: Name

如何通过查看列
Name
,用现有值替换这些
NaN
?对于
CC
我希望得到最大值(但是如果它太复杂,那么我可以选择
23
45
)。预期产出:

    Name     Value
0   AA        33
1   AA        24
2   BB        23
3   BB        NaN
4   CC        NaN
5   CC        23
6   CC        45

谢谢

您可以分组并使用max进行变换,然后使用fillna:

    Name     Value
0   AA        33
1   AA        24
2   BB        23
3   BB        23
4   CC        45
5   CC        23
6   CC        45


您还可以将
lambda
transform

  Name  Value
0   AA   33.0
1   AA   24.0
2   BB   23.0
3   BB   23.0
4   CC   45.0
5   CC   23.0
6   CC   45.0

伟大的如果我想得到最小值,那么我只需将
max
更改为
min
?@AK88是的,没错。。!!
  Name  Value
0   AA   33.0
1   AA   24.0
2   BB   23.0
3   BB   23.0
4   CC   45.0
5   CC   23.0
6   CC   45.0
df["Value"] = df.groupby('Name').transform(lambda x:x.fillna(x.max()))
df
  Name  Value
0   AA   33.0
1   AA   24.0
2   BB   23.0
3   BB   23.0
4   CC   45.0
5   CC   23.0
6   CC   45.0