|
【Python】进阶学习:pandas–isin()用法详解🌈个人主页:高斯小哥🔥高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程👈希望得到您的订阅和支持~💡创作高质量博文(平均质量分92+),分享更多关于深度学习、PyTorch、Python领域的优质内容!(希望得到您的关注~)🌵文章目录🌵📚一、pandas库简介🔍二、isin()方法基础📋示例1:筛选DataFrame中的特定值📋示例2:结合多个条件筛选🎯三、高级用法与技巧📋示例3:筛选DataFrame中多个列的值📋示例4:结合set数据结构使用isin()🎉四、总结🤝五、期待与你共同进步📚一、pandas库简介 pandas是Python中一个非常流行的数据处理库,它提供了大量的数据结构(如Series和DataFrame)以及数据分析工具,使得数据处理变得既简单又高效。在pandas中,isin()是一个非常重要的方法,它允许我们根据一个值列表来筛选数据。🔍二、isin()方法基础 isin()方法用于过滤数据框(DataFrame)或序列(Series)中的值,仅保留在给定列表中出现的值。📋示例1:筛选DataFrame中的特定值假设我们有一个DataFramedf,其中包含学生的信息:importpandasaspd#创建一个示例DataFramedata={'Name':['Alice','Bob','Charlie','David','Eve'],'Subject':['Math','Science','Math','History','Science'],'Score':[90,85,92,78,88]}df=pd.DataFrame(data)#筛选Subject列为'Math'或'Science'的学生selected_students=df[df['Subject'].isin(['Math','Science'])]print(selected_students)12345678910111213'运行运行输出:NameSubjectScore0AliceMath901BobScience852CharlieMath924EveScience8812345📋示例2:结合多个条件筛选isin()方法可以与其他条件筛选方法结合使用,以创建更复杂的筛选条件。importpandasaspd#创建一个示例DataFramedata={'Name':['Alice','Bob','Charlie','David','Eve'],'Subject':['Math','Science','Math','History','Science'],'Score':[90,85,92,78,88]}df=pd.DataFrame(data)#筛选Score大于85且Subject为'Math'或'Science'的学生combined_filter=df[(df['Score']>85)&df['Subject'].isin(['Math','Science'])]print(combined_filter)12345678910111213'运行运行输出:NameSubjectScore0AliceMath902CharlieMath924EveScience881234🎯三、高级用法与技巧 isin()方法不仅限于简单的值匹配,还可以与其他pandas功能结合使用,以实现更高级的数据筛选。📋示例3:筛选DataFrame中多个列的值我们可以同时检查多个列中的值是否存在于给定的列表中。importpandasaspd#创建一个示例DataFramedata={'Name':['Alice','Bob','Charlie','David','Eve'],'Subject':['Math','Science','Math','History','Science'],'Score':[90,85,92,78,88]}df=pd.DataFrame(data)#筛选Name为'Alice'或'Charlie',且Subject为'Math'或'Science'的学生multi_column_filter=df[(df['Name'].isin(['Alice','Charlie'])&df['Subject'].isin(['Math','Science']))]print(multi_column_filter)12345678910111213'运行运行输出:NameSubjectScore0AliceMath902CharlieMath92123📋示例4:结合set数据结构使用isin()使用set数据结构可以更有效地执行isin()操作,尤其是当比较值列表非常大时。importpandasaspd#创建一个示例DataFramedata={'Name':['Alice','Bob','Charlie','David','Eve'],'Subject':['Math','Science','Math','History','Science'],'Score':[90,85,92,78,88]}df=pd.DataFrame(data)#将要匹配的值转换为set以提高效率subjects_set={'Math','Science'}#筛选Subject列为'Math'或'Science'的学生set_filter=df[df['Subject'].isin(subjects_set)]print(set_filter)12345678910111213141516'运行运行输出:NameSubjectScore0AliceMath901BobScience852CharlieMath924EveScience8812345🎉四、总结 isin()是pandas中一个非常实用的方法,它允许我们根据给定的值列表来筛选数据。通过结合不同的条件和技巧,我们可以实现复杂的数据筛选任务。在使用isin()方法时,保持代码清晰、高效和易于维护非常重要。通过遵循最佳实践,我们可以确保筛选操作能够快速、准确地返回所需的结果。🤝五、期待与你共同进步 在数据处理的旅程中,我们始终在学习和成长。希望这篇博客能够帮助你更好地理解和应用pandas中的isin()方法。如果你有任何疑问或建议,欢迎在评论区留言,我们一起探讨和学习。同时,也期待你分享你的经验和见解,让我们共同进步!
|
|