看过来
《pandas 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gairuo123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
(编码题)修改以下名为 df 的 DataFrame 的值,将 Q1、Q2、Q3、Q4 列中小于 60 的分数修改为 60。
import pandas as pd
# 示例数据
data = {
'name': ['Alice', 'Bob', 'Charlie'],
'team': ['A', 'B', 'C'],
'Q1': [55, 75, 50],
'Q2': [65, 40, 85],
'Q3': [59, 45, 58],
'Q4': [70, 90, 30]
}
# 创建 DataFrame
df = pd.DataFrame(data)
df
'''
name team Q1 Q2 Q3 Q4
0 Alice A 55 65 59 70
1 Bob B 75 40 45 90
2 Charlie C 50 85 58 30
'''
以下为 Python 代码:
df.loc[:, 'Q1':'Q4'] = df.loc[:, 'Q1':'Q4'].mask(lambda x: x < 60, 60)
df
'''
name team Q1 Q2 Q3 Q4
0 Alice A 60 65 60 70
1 Bob B 75 60 60 90
2 Charlie C 60 85 60 60
'''
方法二:
df.loc[:, 'Q1':'Q4'] = df.loc[:, 'Q1':'Q4'].clip(lower=60)
方法三:
df.loc[:, 'Q1':'Q4'] = df.loc[:, 'Q1':'Q4'].map(lambda x: max(x, 60))
查看相关链接中的知识。
(完)
更新时间:2024-12-02 15:57:57 标签:pandas python 修改