【小白从小学Python、C、Java】

【Python全国计算机等级考试】

【Python数据分析考试必会题】

● 标题与摘要

Python数据框DataFrame的

数据筛选

● 选择题

关于数据记录的选择,以下哪一项说法错误。

A.不可以使用关系运算选择记录。

B.可以使用范围运算(between)选择记录。

C.可以使用使用逻辑运算符 &(且)和 |(或)选择记录。

D.选取多列需要使用两个方括号。

欢迎大家转发,一起传播知识和正能量,帮助到更多人。期待大家提出宝贵改进建议,互相交流,收获更大。辛苦大家转发时注明出处(也是咱们公益编程交流群的入口网址),刘经纬老师共享知识相关文件下载地址为:http://liujingwei.cn

● 问题解析

可以简单的认为记录是指表格中的行,记录的选择包括以下几种方式。

(1)关系运算: df[df.字段名 关系运算符 数值]。“等于”用‘==’。

(2)范围运算: df[df.字段名.between(s1, s2)], 注意既包含s1又包含s2。

(4)逻辑运算: &(且)和|(或),使用 &(且)和|(或)时每个条件都要用小括号括起来。

(4)字符匹配: 可以使用字符串的模糊筛选,df[df.字段名.str.contains("字符", case = True, na =False)] contains()函数中case=True表示区分大小写, 默认为True; na = False表示不匹配缺失值。

(5)选取多列一定是两个方括号,其中内侧方括号代表是一个list。

● 附图 

图一:可以使用关系运算选择记录

图二:可以使用范围运算(between)选择记录。

图三:可以使用使用逻辑运算符 &(且)和 |(或)选择记录。

 

图四:选取多列需要使用两个方括号。

● 附图代码

#关系运算: df[df.字段名 关系运算符 数值]

import pandas as pd

df = pd.DataFrame({"ID": [100000,100101,100201],

"Surname": ["Zhao","Qian","Sun" ],

'age':[28,35,46]})

#抽取age中等于35的记录

print(df[df.age ==35])

#范围运算: df[df.字段名.between(s1, s2)]

print(df[df.age.between(30,46)])

#逻辑运算: 与(&) 或(|) 

#使用 &(且) 和 |(或) 时每个条件都要用小括号括起来

print(df[(df.age >= 30 ) & (df.age <= 46)])

#字符匹配

print(df[df.Surname.str.contains('a')])

print(df[['ID','age']])

#选取多列一定是两个方括号,其中内侧方括号代表是一个list

● 正确答案

A

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐