亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Pandas:如何替換數據框中所有小于前一個值的值?

Pandas:如何替換數據框中所有小于前一個值的值?

繁星點點滴滴 2022-10-25 15:02:39
我的問題與我在stackoverflow上發布的另一個問題有關:Pandas:如果有任何值小于以前的值,我如何檢查多個列?.現在我知道在我的數據框中有多個值小于以前的值,我想用以前的值替換那個值。示例數據集:    c     d     e0   3     5     8  1   1     5     8  2   5     6     8  3   6     7     8   4   2     1     9  5   9     3     3  期望的結果:    c     d     e0   3     5     81   3     5     82   5     6     83   6     7     84   6     7     95   9     3     9有沒有辦法用簡單的 Python/Panda 代碼行來執行這個任務?
查看完整描述

2 回答

?
元芳怎么了

TA貢獻1798條經驗 獲得超7個贊

您可以使用掩碼和填充。如果您的數據框數據類型是浮點數,則不需要 '.astype(int)' 轉換。


df.mask(df.diff().lt(0)).ffill().astype(int)


    c   d   e

0   3   5   8

1   3   5   8

2   5   6   8

3   6   7   8

4   6   7   9

5   9   3   9


查看完整回答
反對 回復 2022-10-25
?
夢里花落0921

TA貢獻1772條經驗 獲得超6個贊

df.cummax()會成功的。



查看完整回答
反對 回復 2022-10-25
  • 2 回答
  • 0 關注
  • 204 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號