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

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

如果列等于 Pandas 中的值,如何使當前行值等于前一行值?

如果列等于 Pandas 中的值,如何使當前行值等于前一行值?

MM們 2023-07-05 10:27:43
我有一個數據框如下:dfID  val1   0.02   yes3   1.04   0.05   yes如果列 val 等于“yes”,如何將先前值與當前值匹配我嘗試過df['val'] = df['val'].replace('yes', np.nan).bfill().astype(str),但無法按預期工作。期望的輸出ID  val1   yes2   yes3   1.04   yes5   yes我們可以將 np.where 與 bfill 一起使用嗎?該怎么做呢?
查看完整描述

1 回答

?
慕斯王

TA貢獻1864條經驗 獲得超2個贊

怎么樣:


df.loc[df['val'].shift(-1).eq('yes'), 'val'] = 'yes'

輸出:


   ID  val

0   1  yes

1   2  yes

2   3  1.0

3   4  yes

4   5  yes


查看完整回答
反對 回復 2023-07-05
  • 1 回答
  • 0 關注
  • 176 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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