在pandas中删除多列数据时,我们常常会用到drop()方法。本文将从多个方面详细介绍如何使用drop()方法在pandas中删除多列数据,并给出完整的代码示例。
一、删除单个列
如果我们只需要删除一个列,直接使用drop()方法即可:
import pandas as pd
data = {'a':[1,2,3], 'b':[4,5,6], 'c':[7,8,9]}
df = pd.DataFrame(data)
df.drop('c', axis=1, inplace=True)
print(df)
代码说明:
data:模拟数据 df:将字典数据转换为DataFrame格式数据 (df.drop('c', axis=1, inplace=True):删除c列,axis=1表示删除列,inplace=True表示就地修改DataFrame,不创建新的对象。 print(df):输出df数据二、删除多列
三、删除包含特定字符的列
使用filter()方法对列名进行筛选,保留指定规则的列。
import pandas as pd
data = {'a':[1,2,3], 'x1':[4,5,6], 'x2':[7,8,9], 'b':[10,11,12]}
df = pd.DataFrame(data)
df = df.filter(regex='^((?!x).)*$')
print(df)
代码说明:
data:模拟数据 df:将字典数据转换为DataFrame格式数据 df.filter(regex='^((?!x).)*$'):通过正则表达式筛选保留不包含x字符的列 print(df):输出df数据四、批量删除列并保留前n列
使用drop()方法删除多列数据,同时保留前n列:
import pandas as pd
data = {'a':[1,2,3], 'b':[4,5,6], 'c':[7,8,9], 'd':[10,11,12]}
df = pd.DataFrame(data)
df = df.iloc[:, :2].join(df.iloc[:, 4:])
print(df)
代码说明:
data:模拟数据 df:将字典数据转换为DataFrame格式数据 df.iloc[:, :2].join(df.iloc[:, 4:]):保留前两列和后两列,中间的两列被删除 print(df):输出df数据五、删除前n列并保留后n列
使用drop()方法删除多列数据,同时保留后n列:
import pandas as pd
data = {'a':[1,2,3], 'b':[4,5,6], 'c':[7,8,9], 'd':[10,11,12]}
df = pd.DataFrame(data)
df = df.iloc[:, -2:]
print(df)
代码说明:
data:模拟数据 df:将字典数据转换为DataFrame格式数据 df.iloc[:, -2:]:保留后两列,前两列被删除 print(df):输出df数据