Python的Pandas库中使用DataFrame筛选和删除含特定值的行与列

 更新时间:2024年05月21日 10:51:24   作者:高斯小哥  
Pandas是一个强大的数据处理库,提供了各种功能来操作和处理数据,这篇文章主要给大家介绍了关于Python的Pandas库中使用DataFrame筛选和删除含特定值的行与列的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下

一、基础知识回顾 

在开始之前,让我们先回顾一下Pandas DataFrame的基础知识。DataFrame是Pandas中的一个核心数据结构,它可以看作是一个表格,拥有行和列,可以存储不同类型的数据。示例如下:

import pandas as pd

# 创建一个简单的DataFrame
data = {
    'Name': ['Alice', 'Bob', 'Charlie', 'David'],
    'Age': [25, 30, 35, 40],
    'City': ['New York', 'Los Angeles', 'Chicago', 'Houston']
}

df = pd.DataFrame(data)
print(df)

输出:     

Name  Age         City
0    Alice   25     New York
1      Bob   30  Los Angeles
2  Charlie   35      Chicago
3    David   40      Houston

二、筛选含有特定值的行 

在Pandas中,我们可以使用布尔索引来筛选含有特定值的行。布尔索引就是根据每个元素是否满足某个条件(返回True或False)来筛选数据。

# 筛选年龄大于30的行
df_filtered = df[df['Age'] > 30]
print(df_filtered)

上面的代码会筛选出年龄大于30的行,并返回一个新的DataFrame:     

Name  Age     City
2  Charlie   35  Chicago
3    David   40  Houston

三、删除含有特定值的行 

如果我们想从原始DataFrame中删除满足某个条件的行,可以使用drop方法。

# 删除年龄大于30的行
df_dropped = df.drop(df[df['Age'] > 30].index)
print(df[df['Age'] > 30].index)
print("*"*30)
print(df_dropped)

上面的代码会删除年龄大于30的行,并返回一个新的DataFrame:

Index([2, 3], dtype='int64')
******************************
    Name  Age         City
0  Alice   25     New York
1    Bob   30  Los Angeles

四、筛选含有特定值的列 

同样地,我们也可以筛选含有特定值的列。

# 筛选城市为"Chicago"的列
df_filtered_columns = df[df['City'] == 'Chicago']
print(df['City'] == 'Chicago')
print("*"*30)
print(df_filtered_columns)

上面的代码会筛选出城市为"Chicago"的列,并返回一个新的DataFrame:

0    False
1    False
2     True
3    False
Name: City, dtype: bool
******************************
      Name  Age     City
2  Charlie   35  Chicago

五、删除含有特定值的列 

要删除含有特定值的列,我们可以使用drop方法,并指定columns参数。

# 删除城市为"Chicago"的列
df_dropped_columns = df.drop(columns=['City'])
print(df_dropped_columns)

上面的代码会删除城市列,并返回一个新的DataFrame:

      Name  Age
0    Alice   25
1      Bob   30
2  Charlie   35
3    David   40

注意:筛选和删除操作默认返回的是一个新的DataFrame,不会改变原始的DataFrame。

六、实战演练 

假设我们有一个包含学生信息的DataFrame,我们要筛选出年龄大于15且城市为"New York"的学生。

import pandas as pd

# 创建一个包含学生信息的DataFrame
student_data = {
    'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Eve', 'Frank'],
    'Age': [22, 25, 18, 28, 21, 27],
    'City': ['New York', 'Los Angeles', 'Chicago', 'Houston', 'New York', 'San Francisco']
}

student_df = pd.DataFrame(student_data)
print("原始DataFrame:")
print(student_df)

# 筛选年龄大于1且5城市为"New York"的学生
filtered_students = student_df[(student_df['Age'] > 15) & (student_df['City'] == 'New York')]
print("\n筛选后的DataFrame:")
print(filtered_students)

上面的代码会筛选出年龄大于15且城市为"New York"的学生,并打印出筛选后的DataFrame:

原始DataFrame:
      Name  Age           City
0    Alice   22       New York
1      Bob   25    Los Angeles
2  Charlie   18        Chicago
3    David   28        Houston
4      Eve   21       New York
5    Frank   27  San Francisco

筛选后的DataFrame:
    Name  Age      City
0  Alice   22  New York
4    Eve   21  New York

七、最后 

到此这篇关于Python的Pandas库中使用DataFrame筛选和删除含特定值的行与列的文章就介绍到这了,更多相关DataFrame筛选和删除特定值行与列内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python将CSV文件转化为HTML文件的操作方法

    Python将CSV文件转化为HTML文件的操作方法

    很多朋友问小编Python如何将CSV文件转化为HTML文件,csv文件读取怎么操作呢?带着这些问题一起通过本文学习吧
    2021-06-06
  • Python nonlocal关键字 与 global 关键字解析

    Python nonlocal关键字 与 global 关键字解析

    这篇文章主要介绍了Python nonlocal关键字 与 global 关键字解析,nonlocal关键字用来在函数或其他作用域中使用外层变量,global关键字用来在函数或其他局部作用域中使用全局变量,更多香瓜内容需要的小伙伴可以参考一下
    2022-03-03
  • python 编写简单网页服务器的实例

    python 编写简单网页服务器的实例

    今天小编就为大家分享一篇python 编写简单网页服务器的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • 浅谈python为什么不需要三目运算符和switch

    浅谈python为什么不需要三目运算符和switch

    下面小编就为大家带来一篇浅谈python为什么不需要三目运算符和switch。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • PyCharm无法引用自身项目解决方式

    PyCharm无法引用自身项目解决方式

    今天小编就为大家分享一篇PyCharm无法引用自身项目解决方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • python实现简单日志记录库glog的使用

    python实现简单日志记录库glog的使用

    这篇文章主要介绍了python实现简单日志记录库glog的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • Python列表list操作相关知识小结

    Python列表list操作相关知识小结

    今天,本喵带大家仔细温习一下Python的列表,温故而知新,不亦说乎,需要的朋友可以参考下
    2020-01-01
  • Python&Matlab实现灰狼优化算法的示例代码

    Python&Matlab实现灰狼优化算法的示例代码

    灰狼优化算法是一种群智能优化算法,它的独特之处在于一小部分拥有绝对话语权的灰狼带领一群灰狼向猎物前进。本文具体介绍了灰狼优化算法的两种实现示例代码,需要的可以参考一下
    2022-03-03
  • Python快速排序算法实例分析

    Python快速排序算法实例分析

    这篇文章主要介绍了Python快速排序算法,简单说明了快速排序算法的原理、实现步骤,并结合具体实例分析了Python实现快速排序的相关操作技巧,需要的朋友可以参考下
    2017-11-11
  • Python 中将二进制转换为整数的多种方法

    Python 中将二进制转换为整数的多种方法

    这篇文章主要介绍了Python 中将二进制转换为整数,Python 中提供了多种方式将二进制字符串转换为整数,其中包括使用 int() 函数、使用二进制前缀和使用 eval() 函数,本文通过实例代码讲解的非常详细,需要的朋友可以参考下
    2023-05-05

最新评论