gpt4 book ai didi

python - Pandas 正向填充列中破坏顺序的部分

转载 作者:行者123 更新时间:2023-11-28 21:49:02 25 4
gpt4 key购买 nike

我认为这很容易,但我想不出正确的方法。我基本上希望一列从最小到最大排序,但我实际上并不想对这些进行排序,我想替换排序中“错误”的值。 DataFrame 已经按需要排序,我只需要替换这个“id”列错误的一些值。

最好的理解方式是一个例子:

In [98]: d = pd.DataFrame.from_dict({1: {'id': 2}, 2: {'id': 2}, 3: {'id': 3}, 4: {'id':3}, 5: {'id':2}, 6: {'id': 2}, 7: {'id': 4}, 8: {'id': 5}, 9: {'id': 4}, 10: {'id': 6}}, orient='index')

In [99]: d
Out[99]:
id
1 2
2 2
3 3
4 3
5 2
6 2
7 4
8 5
9 4
10 6

现在您可以看到这不是完全有序的。我想要的输出是这样的:

Out[101]:
id
1 2
2 2
3 3
4 3
5 3
6 3
7 4
8 5
9 5
10 6

最佳答案

IIUC,你不是只求累计最大值吗?

>>> d["fixed_id"] = d["id"].cummax()
>>> d
id fixed_id
1 2 2
2 2 2
3 3 3
4 3 3
5 2 3
6 2 3
7 4 4
8 5 5
9 4 5
10 6 6

关于python - Pandas 正向填充列中破坏顺序的部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34205853/

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