2017-07-17 14 views
0

私は弦(パンダシリーズ)とパンダのデータフレームのリストを持っています。インデックスがリストに存在する場合は、データフレームのインデックス(およびその行)を削除します。データフレームをループせずに、リストのすべての要素に.drop( 'xxx')を使わずに、パンダでどうやったらいいですか?パンダで索引のリストをドロップする

答えて

2

ブールマスク試してみてください。

df[~df.index.isin(s)] 
4
In [188]: df 
Out[188]: 
    a b c 
aa x ww 0.5 
bb y tt 0.7 
cc z bb 0.9 
dd z ww 0.6 
ee z nn 0.1 
ff x uu 0.3 

In [189]: to_drop 
Out[189]: 
0 bb 
1 dd 
dtype: object 

In [190]: df = df.drop(to_drop) 

In [191]: df 
Out[191]: 
    a b c 
aa x ww 0.5 
cc z bb 0.9 
ee z nn 0.1 
ff x uu 0.3 

代わりに、我々はqueryメソッドを使用することができます

In [196]: df = df.query("index not in @to_drop") 

In [197]: df 
Out[197]: 
    a b c 
aa x ww 0.5 
cc z bb 0.9 
ee z nn 0.1 
ff x uu 0.3 
関連する問題