怎么使用Python的Pandas布尔索引
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章主要讲解了"怎么使用Python的Pandas布尔索引",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么使用Python的Pandas布尔索引
千家信息网最后更新 2026年11月02日怎么使用Python的Pandas布尔索引
这篇文章主要讲解了"怎么使用Python的Pandas布尔索引",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么使用Python的Pandas布尔索引"吧!
1.计算布尔值统计信息
import pandas as pd import numpy as np import matplotlib.pyplot as plt #读取movie,设定行索引是movie_title pd.options.display.max_columns = 50 movie = pd.read_csv("./data/movie.csv",index_col = 'movie_title')#判断电影时长是否超过两个小时 #Figure1movie_2_hours = movie['duration'] > 120#统计时长超过两小时的电影总数print(movie_2_hours.sum()) #result:1039#统计时长超过两小时的电影的比例print(movie_2_hours.mean())#统计False和True的比例 print(movie_2_hours.value_counts(normalize = True)) #比较同一个DataFrame中的两列actors = movie[['actor_1_facebook_likes','actor_2_facebook_likes']].dropna()print((actors['actor_1_facebook_likes'] > actors['actor_2_facebook_likes']).mean()) #Figure2运行结果:

Figure1
Figure2
2. 构建多个布尔条件
import pandas as pd import numpy as np import matplotlib.pyplot as plt #读取movie,设定行索引是movie_title pd.options.display.max_columns = 50 movie = pd.read_csv("./data/movie.csv",index_col = 'movie_title')#创建多个布尔条件criteria1 = movie.imdb_score > 8criteria2 = movie.content_rating == "PG-13"criteria3 = (movie.title_year < 2000) | (movie.title_year >= 2010)"""print(criteria1.head())print(criteria2.head())print(criteria3.head())运行结果:Figure1"""#将多个布尔条件合并成一个criteria_final = criteria1 & criteria2 & criteria3 print(criteria_final.head())#运行结果:Figure2运行结果:
Figure1
Figure2
3.用布尔索引过滤
import pandas as pd import numpy as np import matplotlib.pyplot as plt #读取movie,设定行索引是movie_title pd.options.display.max_columns = 50 movie = pd.read_csv("./data/movie.csv",index_col = 'movie_title')#创建第一个布尔条件crit_a1 = movie.imdb_score > 8 crit_a2 = movie.content_rating == 'PG-13'crit_a3 = (movie.title_year < 2000) | (movie.title_year > 2009)final_crit_a = crit_a1 & crit_a2 & crit_a3#创建第二个布尔条件crit_b1 = movie.imdb_score < 5crit_b2 = movie.content_rating == 'R'crit_b3 = (movie.title_year >= 2000) & (movie.title_year <= 2010)final_crit_b = crit_b1 & crit_b2 & crit_b3#将两个条件用或运算合并起来final_crit_all = final_crit_a | final_crit_bprint(final_crit_all.head()) #Figure 1 #用最终的布尔条件过滤数据print(movie[final_crit_all].head()) #Figure2运行结果:
Figure1

Figure2
import pandas as pd import numpy as np import matplotlib.pyplot as plt #读取movie,设定行索引是movie_title pd.options.display.max_columns = 50 movie = pd.read_csv("./data/movie.csv",index_col = 'movie_title')#创建第一个布尔条件crit_a1 = movie.imdb_score > 8 crit_a2 = movie.content_rating == 'PG-13'crit_a3 = (movie.title_year < 2000) | (movie.title_year > 2009)final_crit_a = crit_a1 & crit_a2 & crit_a3#创建第二个布尔条件crit_b1 = movie.imdb_score < 5crit_b2 = movie.content_rating == 'R'crit_b3 = (movie.title_year >= 2000) & (movie.title_year <= 2010)final_crit_b = crit_b1 & crit_b2 & crit_b3#将两个条件用或运算合并起来final_crit_all = final_crit_a | final_crit_b#使用loc,对指定的列做过滤操作,可以清楚地看到过滤是否起作用cols = ['imdb_score','content_rating','title_year']movie_filtered = movie.loc[final_crit_all,cols]print(movie_filtered.head(10))运行结果:
感谢各位的阅读,以上就是"怎么使用Python的Pandas布尔索引"的内容了,经过本文的学习后,相信大家对怎么使用Python的Pandas布尔索引这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
布尔
条件
索引
结果
运行
统计
两个
多个
小时
时长
电影
学习
内容
比例
运算
清楚
作用
信息
就是
思路
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
什么是科技互联网
伟宏互联网科技
中国互联网科技股
互联网巨头科技公司
互联网与科技发展
大白互联网科技
太原新华互联网科技学校怎么样
华中科技有哪些互联网大佬
互联网科技产品
重庆互联网医院沙龙医盟信息科技
河南猎农互联网科技有限公司
互联网科技公司有风险吗
互联网5g黑科技有哪些
互联网科技与大数据专业
本届互联网博览会上的黑科技
四川慕妮娅互联网科技有限公司
科技互联网海报
浙南科技城互联网大厦招聘
半导体行业属于互联网高科技类吗
容联科技互联网电商
互联网科技公司的优势
科技赋能互联网健康
互联网实体化科技化
欧洲十大科技互联网公司
互联网还是高科技吗
语蝶互联网科技有限公司
本届互联网博览会上的黑科技
下一代互联网重大应用科技园
吉林省码上互联网科技电话
湖北辰鑫科技互联网