我有一个pandas
数据框,df
.
我想选择所有索引df
那是not在列表中,blacklist.
现在,我使用列表理解来创建所需的切片标签。
ix=[i for i in df.index if i not in blacklist]
df_select=df.loc[ix]
工作正常,但如果我需要经常这样做,可能会很笨拙。
有一个更好的方法吗?
Use isin https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.isin.html在索引上并反转布尔索引以执行标签选择:
In [239]:
df = pd.DataFrame({'a':np.random.randn(5)})
df
Out[239]:
a
0 -0.548275
1 -0.411741
2 -1.187369
3 1.028967
4 -2.755030
In [240]:
t = [2,4]
df.loc[~df.index.isin(t)]
Out[240]:
a
0 -0.548275
1 -0.411741
3 1.028967
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)