Pandas中DataFrame.drop()函数的具体使用

 更新时间:2024年07月23日 10:05:40   作者:Midsummer-逐梦  
DataFrame.drop是Pandas库中一个非常实用的函数,用于删除 DataFrame中的行或列,本文就来介绍一下Pandas中DataFrame.drop()函数的具体使用,感兴趣的可以了解一下

一、简介

DataFrame.drop 是 Pandas 库中一个非常实用的函数,用于删除 DataFrame 中的行或列。通过指定列名或行索引,可以灵活地从数据集中移除不需要的数据。这对于数据清洗和预处理非常有用。

二、语法和参数

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

参数

  • labels: 要删除的标签,可以是数组、列表、元组或单个标签。
  • axis: 删除的轴,0 表示行,1 表示列,默认为 0。
  • index: 如果为 True,则删除标签为索引。
  • columns: 如果为 True,则删除标签为列。
  • level: 指定删除标签的级别,仅在使用多级索引时有效。
  • inplace: 如果为 True,则在原地修改 DataFrame,否则返回一个新的 DataFrame。

三、实例

3.1 删除指定行

import pandas as pd

# 创建一个示例 DataFrame
df = pd.DataFrame({
    'A': [1, 2, 3, 4],
    'B': [5, 6, 7, 8],
    'C': [9, 10, 11, 12]
})

# 删除第一行
result = df.drop(0)
print(result)

输出:

   A   B   C
1  2   6  10
2  3   7  11
3  4   8  12

3.2 删除指定列

# 删除列 'B'
result = df.drop('B', axis=1)
print(result)

输出:

   A   C
0  1   9
1  2  10
2  3  11
3  4  12

3.3 删除多个行和列

import pandas as pd

# 创建一个示例 DataFrame
df = pd.DataFrame({
    'A': [1, 2, 3, 4],
    'B': [5, 6, 7, 8],
    'C': [9, 10, 11, 12]
})

# 删除列 'B'
result = df.drop(columns='B', axis=1)
print(result)

输出:

   A   B
0  1   5
2  3   7
3  4   8

3.4 使用 inplace 修改原 DataFrame

import pandas as pd

# 创建一个示例 DataFrame
df = pd.DataFrame({
    'A': [1, 2, 3, 4],
    'B': [5, 6, 7, 8],
    'C': [9, 10, 11, 12]
})
print(df)
# 删除列 'A' 并直接修改原 DataFrame
df.drop('A', axis=1, inplace=True)
print(df)

输出:

   A  B   C
0  1  5   9
1  2  6  10
2  3  7  11
3  4  8  12
   B   C
0  5   9
1  6  10
2  7  11
3  8  12

四、注意事项

  • 索引和列名:确保删除的标签是存在的,否则会引发 KeyError。
  • inplace 参数:使用 inplace=True 时,原 DataFrame 会被修改,不返回新的 DataFrame。
  • 多级索引:在使用多级索引时,level 参数可以指定删除标签的级别。
  • 数据类型:删除操作不会影响 DataFrame 的数据类型。

扩展

del与drop的区别

在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)

到此这篇关于Pandas中DataFrame.drop()函数的具体使用的文章就介绍到这了,更多相关Pandas DataFrame.drop()内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 解决Python数据可视化中文部分显示方块问题

    解决Python数据可视化中文部分显示方块问题

    这篇文章主要介绍了解决Python数据可视化中文部分显示方块问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05
  • 跟老齐学Python之有容乃大的list(1)

    跟老齐学Python之有容乃大的list(1)

    这一讲中的list类型,也是python的一种数据类型。翻译为:列表。LIST在python中具有非常强大的功能。
    2014-09-09
  • Python爬虫DOTA排行榜爬取实例(分享)

    Python爬虫DOTA排行榜爬取实例(分享)

    下面小编就为大家带来一篇Python爬虫DOTA排行榜爬取实例(分享)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • Python实现图片批量无损压缩脚本

    Python实现图片批量无损压缩脚本

    随着站点的内容越来越多,图片所占据项目的空间越来越大,本教程将会提供一个图像的压缩脚本来实现对png,jpg,webp等图片的压缩,希望对大家有所帮助
    2025-08-08
  • Flask应用部署与多端口管理实践全指南

    Flask应用部署与多端口管理实践全指南

    在开发和部署Web应用时,开发者常常需要处理多端口服务,防火墙配置以及生产环境优化等问题,下面小编就来和大家简单讲讲Flask应用部署与多端口管理实践的相关知识吧
    2025-04-04
  • YOLOv5改进之添加CBAM注意力机制的方法

    YOLOv5改进之添加CBAM注意力机制的方法

    注意力机制最先被用在NLP领域,Attention就是为了让模型认识到数据中哪一部分是最重要的,为它分配更大的权重,获得更多的注意力在一些特征上,让模型表现更好,这篇文章主要给大家介绍了关于YOLOv5改进之添加CBAM注意力机制的相关资料,需要的朋友可以参考下
    2022-11-11
  • python 划分数据集为训练集和测试集的方法

    python 划分数据集为训练集和测试集的方法

    今天小编就为大家分享一篇python 划分数据集为训练集和测试集的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • 使用Python实现将PowerPoint演示文稿转换为图像

    使用Python实现将PowerPoint演示文稿转换为图像

    PowerPoint 演示文稿包含了丰富的视觉元素,在某些场景下,我们需要将这些幻灯片转换为静态图像格式,下面我们就来看看如何使用 Python 和 Spire.Presentation 库将 PowerPoint 幻灯片转换为高质量图像吧
    2026-04-04
  • PyQt5爬取12306车票信息程序的实现

    PyQt5爬取12306车票信息程序的实现

    12306是学习爬虫的比较好的一个练手网站。本文主要实现了PyQt5爬取12306车票信息程序,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-05-05
  • 在windows系统中实现python3安装lxml

    在windows系统中实现python3安装lxml

    本文主要给大家简单介绍了下在windows以及linux系统中使用Python安装LXML模块的教程,非常简单实用,有需要的小伙伴可以参考下
    2016-03-03

最新评论