前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >pandas_VS_Excel统计纵向与横向统计总分最大最小

pandas_VS_Excel统计纵向与横向统计总分最大最小

作者头像
哆哆Excel
发布2022-10-25 14:00:01
7710
发布2022-10-25 14:00:01
举报
文章被收录于专栏:哆哆Excel

pandas_VS_Excel统计纵向与横向统计总分最大最小

【问题】

【要求】

1.在表格的右边插入列“总分”“平均分”“最高”“最低”,横向计算每个人的各项指标

2.在格格的下面插入行“合计”“最高分”“最低分”纵向计算所有人的各项指标

3.输出Excel文件

【代码】

代码语言:javascript
复制
# -*- coding:UTF-8 -*-
"""
纵向计算和,平均
横向统计和,最大傎,最小值
"""
import pandas aspd
d=pd.read_excel('pandas_VS_Excel统计纵向与横向统计总分最大最小.xlsx')
print(d)
temp=d[['语文','数学','英语']]
print(temp)
print(temp.sum(axis=1))
d['总分']=temp.sum(axis=1)
d['平均分']=temp.mean(axis=1)
d['最高']=temp.max(axis=1)
d['最低']=temp.min(axis=1)
col_max=d[['语文','数学','英语','总分','平均分','最高','最低']].max()
col_max['姓名']='最高分'
#g_max=d['']
col_sum=d[['语文','数学','英语','总分','平均分','最高','最低']].sum()
col_sum['姓名']='分数合计'
col_min=d[['语文','数学','英语','总分','平均分','最高','最低']].min()
col_min['姓名']='最低分'
print(col_max)
d=d.append(col_sum,ignore_index=True)
d=d.append(col_max,ignore_index=True)
d=d.append(col_min,ignore_index=True)
d.to_excel('pandas_VS_Excel统计纵向与横向统计总分最大最小_out.xlsx',index=False)
print("done")

【效果图】

【说明】

1.Sum.max,min的统计默认是纵向的,如果要横向我们要加axis=1

2.计算的过程中,先把要统计的数据的列存入到一个temp中,再用相关的函数进行计算

3.pandas.append用法

DataFrame.append(other,ignore_index=False, verify_integrity=False, sort=None)

功能说明:向dataframe对象中添加新的行,如果添加的列名不在dataframe对象中,将会被当作新的列进行添加

other:DataFrame、series、dict、list这样的数据结构

ignore_index:默认值为False,如果为True则不使用index标签

verify_integrity :默认值为False,如果为True当创建相同的index时会抛出ValueError的异常

sort:boolean,默认是None,该属性在pandas的0.23.0的版本才存在。

因为“行数据”的加入中如果没有列标题的会用NaN,所以特别用了

Col_sum[‘姓名’]=‘分数合计’

======今天学习至此======

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-10-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 哆哆Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档