在进行特征工程、划分数据集的工作中,drop()函数都能派上用场。它可以轻松剔除数据、操作列和操作行等。
drop()详细的语法如下:
删除行是index,删除列是columns:
DataFrame.drop(labels=None, axis=0, index=None, columns=None, inplace=False)
参数:
labels:要删除的行或列的标签,可以是单个标签,也可以是标签列表。
立即学习“Python免费学习笔记(深入)”;
axis:要删除的行或列的轴,0表示行,1表示列。
index:要删除的行的索引,可以是单个索引,也可以是索引列表。
columns:要删除的列的列名,可以是单个列名,也可以是列名列表。
inplace:是否在原DataFrame上进行操作,默认为False,即不在原DataFrame上进行操作。
删除列
使用场景1:删除不需要的特征。
例如:有些特征对结果的影响不大,就可以把与因变量不相关的自变量删掉;为了避免多重共线性,要把有强相关关系的自变量删掉。
df = data.drop(data[['RowNumber','CustomerId','Surname']],axis=1) df
代码讲解:
data是数据集,两个中括号代表DataFrame格式,里面筛选了3个要删除的字段;
axis=1代表操作列;
公文签收系统采用ASP+ACCESS开发的一套具有方便、快速、安全、高效的公文签收系统。本系统功能完备、使用方便快捷,已在全国各地的政府、司法、教育等部门成功应用,并得到了多方一致好评。本系统从公文的发布、查阅、签收、反馈、修改、删除等操作都将采用独立方式认证,确保系统安全稳定运行。 网纪互联公文签收系统功能简介: 1. 发布公文:可以选择所有人或指定部门、个人进行签收或无需签收。2. 公文类型:
运行结果:

使用场景2:把因变量删掉
# 自变量、因变量 x_data = df.drop(['Exited'],axis=1) y_data = df['Exited'] x_data
代码讲解:
drop()函数里面填写要删除的字段,表示从df中删除名为“Exited”的列;
['Exited']这一个字段是我们要剔除的因变量,单个字段可以这样表示;
运行结果:

删除行
使用场景3:在划分数据集的时候,生成了训练集,把被分到训练集的样本剔除掉,剩下的就是测试集了。
#划分训练集 train_data = data.sample(frac = 0.8, random_state = 0) #测试集 test_data = data.drop(train_data.index)
代码讲解:
drop()函数里面填行索引可以删除掉行;
train_data是我们划分好的训练集,train_data.index表示行索引;
axis=0,表示的是删除行,也可以不写,是默认值;










