DataFrame按条件筛选、修改数据:df.loc[]拓展
创作时间:
作者:
@小白创作中心
DataFrame按条件筛选、修改数据:df.loc[]拓展
引用
1
来源
1.
https://www.cnblogs.com/GreatPlanHero/p/18189296
本文主要介绍了Pandas中DataFrame的loc方法的使用,包括按条件筛选数据、修改数据以及处理字符串等高级用法。通过具体的代码示例和详细的解释,帮助读者理解如何使用loc方法进行数据筛选和修改。
创建DataFrame
首先,我们通过字典创建一个学生信息的DataFrame:
import pandas as pd
Student_dict = {'姓名':['张三', '李四', '王五', '赵六'],
'性别':['男', '女', '男', '女'],
'年龄':[20, 21, 19, 18],
'Python成绩':[70, 80, 90, 50],
'评价':['良好', '良好', '良好', '良好'],
'地址':['A小区10幢', 'A小区11幢','B小区10幢','C小区11幢']}
df = pd.DataFrame(data=Student_dict, index=['a','b','c','d'])
使用df.loc[]按条件筛选行数据
基本筛选
通过布尔列表的方式筛选数据:
df.loc[[True, True, False, False]]
单条件筛选
筛选Python成绩大于75的学生:
df.loc[df['Python成绩'] > 75]
多条件筛选
筛选Python成绩大于75且年龄大于20的学生:
df.loc[(df['Python成绩'] > 75) & (df['年龄'] > 20)]
注意事项
在使用多个条件时,需要使用括号将条件括起来,且使用&表示"与",|表示"或"。
使用df.loc[]筛选并修改数据
修改单列数据
将Python成绩大于等于90的学生评价修改为"优秀":
df.loc[df['Python成绩'] >= 90, '评价'] = '优秀'
参数说明
- 参数1:筛选条件
- 参数2:要修改的列名
字符串筛选
判断某列是否包含特定字符串
筛选地址包含"A小区"的学生:
df.loc[df['地址'].str.contains('A小区')]
判断某列是否包含特定字符串列表
筛选地址包含"A小区"或"B小区"的学生:
xiaoqu_list = ['A小区', 'B小区']
xiaoqu_str = '|'.join(xiaoqu_list)
df[df['地址'].str.contains(xiaoqu_str)]
根据DataFrame多条件修改多列
假设有一个DataFrame,包含借方数量、贷方数量和数量单位:
借方数量 | 贷方数量 | 数量单位 |
|---|---|---|
100 | 1000 | 公斤 |
0.2 | 2 | 吨 |
300 | 3000 | 公斤 |
0.4 | 4 | 吨 |
500 | 5000 | 公斤 |
需求是将单位为"公斤"的数量转换为"吨":
借方数量 | 贷方数量 | 数量单位 |
|---|---|---|
0.1 | 1 | 吨 |
0.2 | 2.0 | 吨 |
0.3 | 3 | 吨 |
0.4 | 4.0 | 吨 |
0.5 | 5 | 吨 |
实现代码如下:
def exec_func(df):
if df['标准单位'].strip() == '公斤':
return pd.Series([df['借方数量']/1000, df['贷方数量']/1000, '吨'])
else:
return pd.Series([df['借方数量'], df['贷方数量'], '吨'])
df[['借方数量', '贷方数量', '标准单位']] = df.apply(exec_func, axis=1)
热门推荐
脑病挂什么科
珠海海上游轮之旅:全方位欣赏港珠澳大桥,体验澳门环岛游
父母到多少岁子女应该支付赡养费
老人赡养费从什么时候开始拿
泰国著名建筑:传统与现代的完美融合
从戏剧性到本体性——论王评章的理论转变
劳动仲裁中的公积金处理
空调遥控器哪里买?7个购买渠道全攻略
专家解读:大蒜对慢性结肠炎的辅助作用及使用注意事项
生化危机系列游戏排名:从好玩到无聊的完整榜单
商品房和自建房究竟有什么区别?
如果你们在一起的时间太多,可以更新与伴侣关系的8个建议
病例分享:明明典型浸润性癌影像表现病理结果却是原位癌,原位癌也可表现为混合密度?
玻尔兹曼大脑悖论:探索意识的边界与正确认识
这道作文题学生大呼超难,暴露的不止是写作水平偏低,更是教育的顽疾
软件测试人员如何接单
怎么判断扁桃体发炎是细菌还是病毒引起的
吉兰巴雷综合征康复护理指南
景区门票系统刷身份证怎么操作?
左下腹疼是什么原因
观象山地理海拔原点
日本修士学制、入学考试及毕业要求详解
2025年心理治疗师报考攻略:含报名流程、审核流程、时间安排
你以为“BITCH”是个脏字儿你就输了!
2024九一八历史博物馆需要预约吗
乙肝小三阳需要定期到医院进行检查吗
小型观赏鱼的初级饲养指南
从乡镇走向全国、走向世界,见证一株香瓜苗的黄金30年
电视剧《大明风华》演的是历史,说的是现实,为何子女教育很重要
一水柠檬酸工业级和食品级区别?