Python pandas.DataFrame.drop函数方法的使用

Pandas的DataFrame.drop方法用于从数据帧中删除指定的行或列。它接受标签、轴、级别、就地修改等参数,允许精确地根据需要删除数据。例如,可以按索引或列名删除特定行或列,甚至在多级索引中删除特定级别的标签。此方法返回一个新的DataFrame,除非设置'inplace=True',否则原始数据不变。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Pandas是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。Pandas提供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一。本文主要介绍一下Pandas中pandas.DataFrame.drop方法的使用。

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

从行或列中删除指定的标签。

通过指定标签名称和相应的轴,或直接指定索引或列名称来删除行或列。使用多索引时,可以通过指定级别来删除不同级别上的标签。

参数

labels : 单个标签或类似列表

要删除的索引或列标签。

axis : {0或'index',1或'columns'},默认为0

是否从索引(0或'索引')或列(1或'列')中删除标签。

index : 单个标签或类似列表

指定轴的替代方法(labels, axis=0 相当于index=labels)。

版本0.21.0中的新功能。

columns : 单个标签或类似列表

指定轴的替代方法( labels, axis=1相当于columns=labels)。

版本0.21.0中的新功能。

level : int或level name,可选

对于MultiIndex,将从中删除标签的级别。

inplace : bool,默认为False

如果为True,则执行就地操作并返回None。

errors  : {‘ignore’, ‘raise’},,默认'raise'

如果“忽略”,则禁止错误,仅删除现有标签。

返回

DataFrame

没有删除索引或列标签的DataFrame。

Raises

KeyError异常

如果在所选轴中找不到任何标签。

例子

>>> df = pd.DataFrame(np.arange(12).reshape(3, 4),
...                   columns=['A', 'B', 'C', 'D'])
>>> df
   A  B   C   D
0  0  1   2   3
1  4  5   6   7
2  8  9  10  11

删除列

>>> df.drop(['B', 'C'], axis=1)
   A   D
0  0   3
1  4   7
2  8  11
>>> df.drop(columns=['B', 'C'])
   A   D
0  0   3
1  4   7
2  8  11

按索引删除一行

>>> df.drop([0, 1])
   A  B   C   D
2  8  9  10  11

删除MultiIndex DataFrame的列和/或行

>>> midx = pd.MultiIndex(levels=[['lama', 'cow', 'falcon'],
...                              ['speed', 'weight', 'length']],
...                      codes=[[0, 0, 0, 1, 1, 1, 2, 2, 2],
...                             [0, 1, 2, 0, 1, 2, 0, 1, 2]])
>>> df = pd.DataFrame(index=midx, columns=['big', 'small'],
...                   data=[[45, 30], [200, 100], [1.5, 1], [30, 20],
...                         [250, 150], [1.5, 0.8], [320, 250],
...                         [1, 0.8], [0.3, 0.2]])
>>> df
                big     small
lama    speed   45.0    30.0
        weight  200.0   100.0
        length  1.5     1.0
cow     speed   30.0    20.0
        weight  250.0   150.0
        length  1.5     0.8
falcon  speed   320.0   250.0
        weight  1.0     0.8
        length  0.3     0.2
>>> df.drop(index='cow', columns='small')
                big
lama    speed   45.0
        weight  200.0
        length  1.5
falcon  speed   320.0
        weight  1.0
        length  0.3
>>> df.drop(index='length', level=1)
                big     small
lama    speed   45.0    30.0
        weight  200.0   100.0
cow     speed   30.0    20.0
        weight  250.0   150.0
falcon  speed   320.0   250.0
        weight  1.0     0.8

转载:Python pandas.DataFrame.drop函数方法的使用-CJavaPy

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值