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

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

獲取熊貓每個月的最后一個非 NaN 值

獲取熊貓每個月的最后一個非 NaN 值

慕碼人8056858 2021-12-16 15:56:13
我有一個表單的 DataFrameeqt_code    ACA_FP  AC_FP  AI_FPBDATE                           2015-01-01     NaN    NaN    NaN2015-01-02     NaN    NaN    NaN2015-01-05       1    NaN    NaN2015-01-06     NaN    NaN    NaN2015-01-07     NaN    NaN    NaN2015-01-08     NaN    0.2    NaN2015-01-09     NaN    NaN    NaN2015-01-12       5    NaN    NaN2015-01-13     NaN    NaN    NaN2015-01-14     NaN    NaN    NaN2015-01-15     NaN    NaN    NaN而且我希望每個月都獲得每列的最后一個非 NaN 值(如果沒有有效值,則為 NaN )。因此導致類似eqt_code    ACA_FP  AC_FP  AI_FPBDATE                           2015-01-31       5    0.2    NaN2015-02-28      10      1      32015-03-31     NaN    NaN      32015-04-30      10      1      3我有兩個想法來執行此操作:做一個ffill到月底的限制。類似的東西df.ffill(<add good thing here>).resample('M').last()。last_valid_index與 一起使用resample('M')。
查看完整描述

2 回答

?
森林海

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

使用 resample


df.resample('M').last()

Out[82]: 

            ACA_FP  AC_FP  AI_FP

eqt_code                        

2015-01-31     1.0    0.2    NaN


查看完整回答
反對 回復 2021-12-16
?
慕田峪7331174

TA貢獻1828條經驗 獲得超13個贊

使用groupby和last:


# Do this if the index isn't a DatetimeIndex.

# df.index = pd.to_datetime(df.index)

df.groupby(df.index + pd.offsets.MonthEnd(0)).last()


            ACA_FP  AC_FP  AI_FP

BDATE                           

2015-01-31     5.0    0.2    NaN

...


查看完整回答
反對 回復 2021-12-16
  • 2 回答
  • 0 關注
  • 130 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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