您现在的位置是:首页 > 伤感句子

Python实用技巧:Pandas--DataFrame--筛选和删除含特定值的行与列

作者:康由时间:2024-03-29 09:15:38分类:伤感句子

简介  文章浏览阅读1.6k次,点赞23次,收藏23次。

点击全文阅读

Python实用技巧:Pandas–DataFrame–筛选和删除含特定值的行与列

在这里插入图片描述

🌈 个人主页:高斯小哥
🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程 👈 希望得到您的订阅和支持~
💡 创作高质量博文,分享更多关于深度学习、PyTorch、Python领域的优质内容!(希望得到您的关注~)


🌵文章目录🌵

一、基础知识回顾 📚二、筛选含有特定值的行 🔍三、删除含有特定值的行 🗑️四、筛选含有特定值的列 🔎五、删除含有特定值的列 🗑️六、实战演练 🚀七、最后 🤝

  👋🏼欢迎来到我的技术博客!今天我们将一起探讨如何在Python的Pandas库中,使用DataFrame来筛选和删除含有特定值的行与列。Pandas是Python中一个非常强大的数据分析库,它提供了大量的功能来帮助我们高效地处理和分析数据。

关键词:#Pandas #DataFrame #筛选特定值 #删除特定值 #布尔索引 #drop方法 #实战演练 #数据处理

一、基础知识回顾 📚

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

import pandas as pd# 创建一个简单的DataFramedata = {    '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         City0    Alice   25     New York1      Bob   30  Los Angeles2  Charlie   35      Chicago3    David   40      Houston

二、筛选含有特定值的行 🔍

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

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

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

      Name  Age     City2  Charlie   35  Chicago3    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         City0  Alice   25     New York1    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    False1    False2     True3    FalseName: City, dtype: bool******************************      Name  Age     City2  Charlie   35  Chicago

五、删除含有特定值的列 🗑️

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

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

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

      Name  Age0    Alice   251      Bob   302  Charlie   353    David   40

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

六、实战演练 🚀

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

import pandas as pd# 创建一个包含学生信息的DataFramestudent_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           City0    Alice   22       New York1      Bob   25    Los Angeles2  Charlie   18        Chicago3    David   28        Houston4      Eve   21       New York5    Frank   27  San Francisco筛选后的DataFrame:    Name  Age      City0  Alice   22  New York4    Eve   21  New York

七、最后 🤝

  亲爱的读者,感谢您每一次停留和阅读,这是对我们最大的支持和鼓励!🙏在茫茫网海中,您的关注让我们深感荣幸。您的独到见解和建议,如明灯照亮我们前行的道路。🌟若在阅读中有所收获,一个赞或收藏,对我们意义重大。

  我们承诺,会不断自我挑战,为您呈现更精彩的内容。📚有任何疑问或建议,欢迎在评论区畅所欲言,我们时刻倾听。💬让我们携手在知识的海洋中航行,共同成长,共创辉煌!🌱🌳感谢您的厚爱与支持,期待与您共同书写精彩篇章!

  您的点赞👍、收藏🌟、评论💬和关注💖,是我们前行的最大动力!

  🎉 感谢阅读,祝你编程愉快! 🎉

点击全文阅读

郑重声明:

本站所有活动均为互联网所得,如有侵权请联系本站删除处理

上一篇:C#十大排序总结

下一篇:返回列表

我来说两句