gpt4 book ai didi

python - 从特定的行开始,如何进行它们的值直到遇到具有更高值的行?

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

假设有一个 pandas 系列和一个标记特定行的 bool 掩码。除屏蔽值外,所有其他值均按升序排序。如何将掩码值写入后续行,直到遇到具有更高值的行?

我对仅使用 bool 掩码和 pandas.Series 方法而不是显式处理行索引的解决方案特别感兴趣。非常感谢!

示例

输入:

values = pd.Series([0.1, 0.15, 0.29, 0.22, 0.24, 0.3, 0.46, 0.5, 0.52, 0.55, 0.81, 0.67, 0.7, 0.81, 0.84, 0.91, 0.93, 0.98, 1.])
mask = pd.Series([False, False, True, False, False, False, False, False, False, False, True, False, False, True, False, False, False, False, False])

输出:

values = pd.Series([0.1, 0.15, 0.29, 0.29, 0.29, 0.3, 0.46, 0.5, 0.52, 0.55, 0.81, 0.81, 0.81, 0.81, 0.84, 0.91, 0.93, 0.98, 1.])

最佳答案

pandas.Series 有方法 cummax :

values = pd.Series([0.1, 0.15, 0.29, 0.22, 0.24, 0.3, 0.46, 0.5, 0.52, 0.55, 0.81, 0.67, 0.7, 0.81, 0.84, 0.91, 0.93, 0.98, 1.])

values.cummax()

0 0.10
1 0.15
2 0.29
3 0.29
4 0.29
5 0.30
6 0.46
7 0.50
8 0.52
9 0.55
10 0.81
11 0.81
12 0.81
13 0.81
14 0.84
15 0.91
16 0.93
17 0.98
18 1.00

关于python - 从特定的行开始,如何进行它们的值直到遇到具有更高值的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53684949/

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