删除列可以直接使用del
import numpy as np
import pandas as pd
df = pd.DataFrame(data=[{"A":"one", "B":"a"}, {"A":"two", "B":"b"}, {"A":"one", "B":1}])
A | B | |
---|---|---|
0 | one | a |
1 | two | b |
2 | one | 1 |
删除 A 列,会就地修改
del df['A']
B | |
---|---|
0 | a |
1 | b |
2 | 1 |
通过列名称删除:
df = df.drop(['B', 'C'], axis=1) # drop不会就地修改,创建副本返回
df.drop(['B', 'C'], axis=1, inplace=True) # inplace=True会就地修改
使用列数删除,传入参数是int,列表,者切片:
df.drop(df.columns[0], axis=1, inplace=True) # 删除第1列
df.drop(df.columns[0:3], axis=1, inplace=True) # 删除前3列
df.drop(df.columns[[0, 2]], axis=1, inplace=True) # 删除第1第3列