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)
热门推荐
来马山,探索和体验不一样的生活方式
成为高效的学习者:掌握学习策略,突破学习瓶颈
自主学习的策略:家长如何教孩子制定学习计划?
中考学习经验分享:高效学习方法与全面备考指南
熬夜党必喝:元气满满鸡汤
晕船怎么办?教你一招永不晕
锅包肉:从道台府宴客菜到东北餐桌上的“金黄诱惑”
云南十八怪之鸡蛋串:一道独特的风景线
芝士火鸡面新吃法,让你秒变大厨!
一口惊艳!桂花蜜汁虾的详细做法
椒盐大虾:从郑和船队到餐桌上的美味传奇
《巨齿鲨》热映,激发你的科幻创作灵感!
《巨齿鲨2:深渊》背后的科学真相揭秘
冬季泡澡,老人如何护心?
江苏特色鸡腿爪:从挑选到烹饪的完整指南
羊蹄的功效与作用、禁忌和食用方法
钓友分享秘制鲤鱼饵料配方和做法(上)
猪血汤的秘密!为什么这么多人爱喝?
买涠洲岛船票前要知道的细节「第一次必看」
元旦家庭聚餐必备:炸牛肉丸子的制作攻略
法律人在抖音、小红书做短视频的思路和方法
育儿创业者的高效时间管理秘籍
儿童乐园创业vs打工:如何做出最适合的选择?
《巨齿鲨》热映:揭秘史前怪兽灭绝之谜
无油无糖巧克力面包:健康烘焙的新宠
君之推荐:巧克力面包完美做法
营养师警告:巧克力夹心面包的热量比炸鸡还高,早餐这样吃更健康
糖醋里脊的完美烹饪技巧,让你在家也能做出餐厅级美味
@抑郁、焦虑、失眠患者:国家卫健委《心理健康素养十条》
历史视角下的王莽:复杂性格与争议统治