python - 我怎样才能使这段代码更高效,即一两行?
问题描述
census_df = census_df.loc[((census_df['REGION'] >= 1) & (census_df['REGION'] <=2))]
census_df = census_df[census_df['CTYNAME'].str.match('Washington')]
census_df = census_df[census_df['POPESTIMATE2015'] > census_df['POPESTIMATE2014']]
census_df = census_df[['STNAME', 'CTYNAME']]
census_df
我知道必须有一种方法可以使用 . 我可以只使用“&”符号来连接前三行吗?
解决方案
使用 'query()' 可以为您节省大量空间。
census_df = census_df.query(" \
(1 <= REGION <= 2) \
& CTYNAME.str.match('Washington') \
& (POPESTIMATE2015 > POPESTIMATE2014)
")[['STNAME', 'CTYNAME']]
在一行中:
census_df = census_df.query("(1 <= REGION <= 2) & CTYNAME.str.match('Washington') & (POPESTIMATE2015 > POPESTIMATE2014)")[['STNAME', 'CTYNAME']]
推荐阅读
- recursion - 动态编程与递归有多大不同
- javascript - 首页前闪屏
- python - “内容长度分隔的消息正文过早结束” - 使用 pyspark 从 S3 存储桶访问 json 文件时出错
- javascript - 如何使用 PHPmailer 发送带有下拉列表的电子邮件?
- reactjs - 简单的网络摄像头/移动摄像头应用 React typescript
- arrays - 使用perl将文件读入数组时如何保持空格格式?
- java - 在两个相似的嵌套类之间进行转换 - Stripe Java SDK
- c++ - 如何查看 Bazel 中使用的所有 copts(C/C++ 构建选项)?
- php - PHP 查询 - 检查字符串字符
- html - 如何以角度从货币管道中删除 1000 个因子逗号