如何简化泰坦尼克数据集fr1中各舱位女性平均年龄的计算代码?
简洁计算各舱位女性平均年龄的方法
你现在的代码只能单独计算单个舱位的女性平均年龄,舱位数量多的时候重复写代码太繁琐,用pandas的groupby分组功能可以一次性搞定所有舱位的统计,给你两种简洁的实现方式:
方法一:先筛选女性数据再分组计算
# 先筛选所有女性数据,按舱位分组后计算平均年龄并四舍五入 female_age_by_class = fr1[fr1["gender"] == "female"].groupby("class")["Age"].mean().round() print(female_age_by_class)
方法二:分组后提取女性数据结果
# 先按舱位+性别分组计算平均年龄,再提取女性的结果并四舍五入 female_age_by_class = fr1.groupby(["class", "gender"])["Age"].mean().round().xs("female", level="gender") print(female_age_by_class)
这两种方法都能直接输出每个舱位对应的女性平均年龄,不管舱位有20个还是更多,都不用重复编写单舱位的处理代码。
内容的提问来源于stack exchange,提问作者Josue Medina
相关产品推荐
相关产品推荐

