gpt4 book ai didi

python - 按最小值分组并用另一列的值填充 NA

转载 作者:太空宇宙 更新时间:2023-11-04 00:37:05 27 4
gpt4 key购买 nike

我有一个看起来像这样的示例数据框。

df = pd.DataFrame (data = {'uid': [1,1,1,2,2,3], 'pagename':['home', 'blah', 
'blah', 'home', 'blah', 'blah'], 'startpage': ['NA', 'NA', 'NA', 'home',
'home', 'blah'], 'date_time': [0,1,2,5,9,1]})

我想做的是按 UID 分组并找到最小日期时间。如果最小 date_time 的起始页为 Null(我将字符串“NA”表示为 Null),那么我想使用该行的页面名称来填充起始页列。我还希望为具有相同 UID 的所有行填充起始页。

这是我想要的结束数据框。

df = pd.DataFrame (data = {'uid': [1,1,1,2,2,3], 'pagename':['home', 'blah', 
'blah', 'home', 'blah', 'blah'], 'startpage': ['home', 'home', 'home',
'home', 'home', 'blah'], 'date_time': [0,1,2,5,9,1]})

最佳答案

fillnatransform

i = df.groupby('uid').date_time.transform('idxmin')
df.startpage = df.startpage.fillna(i.map(df.pagename))

print(df)

date_time pagename startpage uid
0 0 home home 1
1 1 blah home 1
2 2 blah home 1
3 5 home home 2
4 9 blah home 2
5 1 blah blah 3

关于python - 按最小值分组并用另一列的值填充 NA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43547600/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com