gpt4 book ai didi

python - 更新 Pandas 中的非唯一键

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

我有一个要插入到 mysql 数据库中的数据框。在插入之前,我需要在包含非唯一键的列中填写 NA 值。填写的值需要跨组共享,但不能与sql表中任何预先存在的值重叠。

假设表中的最大键值为 5。我需要:

id    group    key
1 A 1
2 A 1
3 B NA
4 B NA
5 C 2
6 D NA

成为:

id    group    key
1 A 1
2 A 1
3 B 6
4 B 6
5 C 2
6 D 7

最佳答案

这是另一种使用 .rank 技巧的方法。它产生与您想要的输出相同的结果。

max_key_value = 5

# boolean selector to select rows with NaN
null_sel = df["key"].isnull()
# replace the key by rank value
df.loc[null_sel, 'key'] = df.loc[null_sel, 'group'].rank(method='dense') + max_key_value
df

group id key
0 A 1 1
1 A 2 1
2 B 3 6
3 B 4 6
4 C 5 2
5 D 6 7

关于python - 更新 Pandas 中的非唯一键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31972963/

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