许多ix
、loc
、iloc
操作您指定要选择的索引。我想做相反的事情。我想排除几列并选择其余的。我该怎么做呢。即指定需要排除而不是包含的索引。
例如一些伪代码
a.iloc[~1:3, :]
a.loc[~['A', 'B'], :]
我正在寻找性能、内存使用和简洁,如上面的伪代码所示。
注意:DataFrame 很大,一个轴上有大量数据,而其他轴上的数据相对较少。
最佳答案
您可以删除
或选择您想要的:
df.drop(df.columns[[1, 2]], axis=1, inplace=True)
# drop by Name
df1 = df1.drop(['D', 'E'], axis=1)
## Select the ones you want
df1 = df[['a','d']]
还有一个新的 difference你可以调用index.所以除了 col D 和 col E 之外的所有内容:
df2 = df[df.columns.difference(['D', 'E'])]
希望这有帮助!
关于python - 如何对 Pandas 对象执行切片(使用 ix、loc、iloc)操作(排除某些指定索引),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43405861/