簡體   English   中英

熊貓數據框基於索引和列值刪除行

[英]Pandas dataframe remove rows based on index and column value

我有一個稱為df的多索引數據幀,我想刪除所有帶有符號的行(多索引的第二層)='tb_91day_tri'並且權重(列)= 0。我知道按索引刪除行很容易,行按列值,但我不知道如何將兩者結合。

                                             weight
asofdate   symbol                                  
2015-11-02 universe_tri                      0.000000
           tb_91day_tri                      0.053984
           tri_us78463x749                   0.051751
           tri_ca46431a109                   0.018860
           tri_ca46430l106                   0.067672
           tri_ca46430j101                   0.197639
           tri_ca46428l100                   0.151681
           tri_ca46428j105                   0.108409
           tse_300_bl_tri                    0.000000
           tb_91day_tri                      0.000000
           sp_500_tri                        0.000000


df.drop(df.xs('tb_91day_tri',level=1)[df.xs('tb_91day_tri',level=1)['weight']==0]) #doesn't work

你可以:

selection = df[df.weight!=0].drop('tb_91day_tri', level=1)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM