[Pandas] DataFrame.drop() 删除数据

本文详细解读了Pandas库中df.drop()函数的用法,包括删除行和列的操作,以及与Python内置函数del的区别。讨论了drop的灵活性、多项目处理和可复制性,并介绍了在删除列时axis=1的必要性。同时,比较了drop与del在删除操作上的优劣和适用场景。

df.drop()通过指定标签名称和相应的轴,或直接给定索引或列名称来删除行或列

语法

df.drop(labels = None, axis = 0, 
        index = None, columns = None, 
        level = None, inplace = False, 
        errors = 'raise')

参数

1.labels:要删除的列或者行,如果要删除多个,传入列表

2.axis:轴的方向,0为行,1为列,默认为0

3.index:指定的一行或多行

4.columns:指定的一列或多列

5.level:索引层级,将删除此层级

6.inplace:布尔值,是否生效

7.errors:ignore或raise,默认为raise,如果为ignore,则容忍错误,仅删除现有标签

# 删除数据 DataFrame.drop()
import pandas as pd

df = pd.DataFrame([['x','x',1],['x','x',1],['z','x',2]], columns = ['A','B','C'])

# 删除指定行
res1 = df.drop([0,1])
res2 = df.drop(index = [0,1])

# 删除指定列
#res3该方法一定要指定axis = 1,否则会报错
res3 = df.drop(['B','C'], axis = 1)
res4 = df.drop(columns = ['B','C'])

结果展示

df

res1

res2

res3

res4

删除表中的某一行或者某一列更明智的方法是使用drop,它不改变原有的df中的数据,而是返回另一个dataframe来存放删除后的数据

扩展

deldrop的区别

在Python中del和drop方法都能够删除dataframe中的列数据,但两者也有着些许区别:

1. del属于Python的内置函数,drop属于pandas中的内置函数

2. del 删除列

drop 删除行和列(默认行)

3. drop一次可以处理多个项目;del一次只能操作一个

4. drop可以就地操作或返回副本;del仅是就地操作

5. 两种函数在执行效率上很接近,但是在较大数据上,drop函数优势更明显,尤其是在处理多列数据时

del crime['Total']
crime=crime.drop(['Total'],axis=1)
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值