Pandas:按不需要的列名子集数据框

时间:2016-11-05 01:42:56

标签: pandas dataframe subset

要按列名称对数据框进行子集化,我通常会这样做:

df[['A', 'B']]

其中list(df.columns.values) = ['A', 'B', 'C', 'D']

说我想要获取除'B'之外的所有列。我该怎么做?这显然不起作用:

df[!['B']]

2 个答案:

答案 0 :(得分:1)

使用drop method

df.drop('B', axis=1)
如果您希望删除多个列,

drop也可以接受列列表。

答案 1 :(得分:0)

您可以通过请求所需的行(在本例中为all)和所需的列(或不要)来使用ix来实现此目的。例如:

df.ix [:, df.columns != 'B']

除了' B'

之外,它会为所有列提供所有行