从熊猫数据框中删除许多列

时间:2020-02-12 21:00:39

标签: python pandas

假设我有一个包含100多个列的数据框,我该如何删除最后15列?

有没有比输入df.drop([column1,column2,...,column15])更好的方法了?我必须在这里输入所有列的名称。有没有办法像[column1 : column15]这样的切片方式?

4 个答案:

答案 0 :(得分:3)

如果知道要删除的列的索引,则可以使用

df.drop(df.columns[15:30], axis=1)

正如@fillbranden在评论中所述,我应该向您展示了如何使用以下方法删除最后15列:

df.drop(df.columns[-15:], axis=1)

答案 1 :(得分:1)

从数据框中删除最后15列:

df = df.iloc[:, :-15]

答案 2 :(得分:0)

尝试使用组成的数据框执行以下代码:

df = pd.DataFrame(np.random.randint(0,100, size= (100, 15)), columns=list('ABCDEFGHIJKLMNO'))

在这种情况下,我使用以下内容删除了最后5列:

df.drop(df.iloc[:,10:15], inplace=True, axis=1)
print(df)

enter image description here

只要您可以轻松使用列索引,它就可以满足您的目的。

答案 3 :(得分:0)

如果您不知道特定的列索引,则丢弃最后的X列:

cols = list(range(-1, -10, -1)) # Drop last 10 columns

df.drop(df.columns[cols], axis = 1)