pandas求平均数和中位数的方法实例


Posted in Python onAugust 04, 2021

准备

pandas是一个强大的Python数据分析的工具包。

pandas是基于NumPy构建的。

pandas的主要功能

  • 具备对其功能的数据结构DataFrame、Series
  • 集成时间序列功能
  • 提供丰富的数学运算和操作
  • 灵活处理缺失数据

本文用到的表格内容如下:

pandas求平均数和中位数的方法实例

先来看一下原始情形:

import pandas as pd
​
df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
print(df)

result:

   分类            货品  实体店销售量  线上销售量  成本   售价
0  水果            苹果      34    234  12   45
1  家电           电视机      56    784  34  156
2  家电            冰箱      78    345  24  785
3  书籍  python从入门到放弃      25     34  13   89
4  水果            葡萄     789     56   7  398

1.求平均数

1.1对全表进行操作

1.1.1求取每列的平均数
df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
print(df.mean())

result:

实体店销售量    196.4
线上销售量     290.6
成本         18.0
售价        294.6
dtype: float64

1.1.2 求取每行的平均数

df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
print(df.mean(axis=1))

result:

0     81.25
1    257.50
2    308.00
3     40.25
4    312.50
dtype: float64

先看运行结果,我们可以看到,每一行求平均数的时候直接忽略文本字符类型的列,只对数字类型的列进行求平均数。就比如第一行的数据

   分类            货品  实体店销售量  线上销售量  成本   售价
0  水果            苹果      34    234  12   45

上面的81.25=(34+234+12+45) / 4,,其他的行也是如此

1.2 对单独的一行或者一列进行操作

1.2.1 求取单独某一列的平均数

df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
print(df['实体店销售量'].mean())

result:

196.4

1.2.2 求取单独某一行的平均数

df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
print(df.iloc[[0]].mean())

result:

实体店销售量     34.0
线上销售量     234.0
成本         12.0
售价         45.0
dtype: float64

1.3 对多行或者多列进行操作

1.3.1 求取多列的平均数

df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
print(df[['实体店销售量', "线上销售量"]].mean())

result:

实体店销售量    196.4
线上销售量     290.6
dtype: float64

1.3.2 求取多行的平均数

df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
print(df.iloc[[0, 1]].mean())

result:

实体店销售量     45.0
线上销售量     509.0
成本         23.0
售价        100.5
dtype: float64

2 求中位数

2.1对全表进行操作

2.1.1对每一列求中位数

df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
print(df.median())

result:

实体店销售量     56.0
线上销售量     234.0
成本         13.0
售价        156.0
dtype: float64

可以看到,中位数的概念只对数字有效

2.1.2 对每一行求中位数

df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
print(df.median(axis=1))

result:

0     39.5
1    106.0
2    211.5
3     29.5
4    227.0
dtype: float64

2.2 对单独的一行或者一列进行操作

2.2.1 对某一列求中位数

df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
print(df['实体店销售量'].median())

result:

56.0

2.2.2 对某一行求中位数

df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
print(df.iloc[[0]].median())

result:

实体店销售量     34.0
线上销售量     234.0
成本         12.0
售价         45.0
dtype: float64

2.3 对多行或者多列进行操作

2.3.1 对多列求中位数

df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
print(df[['实体店销售量', "线上销售量"]].median())

result:

实体店销售量     56.0
线上销售量     234.0
dtype: float64

2.3.2 对多行求中位数

df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
print(df.iloc[[0, 1]].median())

result:

实体店销售量     45.0
线上销售量     509.0
成本         23.0
售价        100.5
dtype: float64

总结

到此这篇关于pandas求平均数和中位数的文章就介绍到这了,更多相关pandas求平均数中位数内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中获取网页状态码的两个方法
Nov 03 Python
用Python解析XML的几种常见方法的介绍
Apr 09 Python
对numpy数据写入文件的方法讲解
Jul 09 Python
Django框架实现的普通登录案例【使用POST方法】
May 15 Python
python递归法实现简易连连看小游戏
Mar 25 Python
python 处理微信对账单数据的实例代码
Jul 19 Python
Python csv模块使用方法代码实例
Aug 29 Python
python生成特定分布数的实例
Dec 05 Python
Django 解决新建表删除后无法重新创建等问题
May 21 Python
python 实现图像快速替换某种颜色
Jun 04 Python
基于python实现简单网页服务器代码实例
Sep 14 Python
Pycharm自动添加文件头注释和函数注释参数的方法
Oct 23 Python
Python NumPy灰度图像的压缩原理讲解
Aug 04 #Python
Python内置数据结构列表与元组示例详解
Python制作动态字符画的源码
Aug 04 #Python
Python进行区间取值案例讲解
Aug 02 #Python
Python获取江苏疫情实时数据及爬虫分析
Django对接elasticsearch实现全文检索的示例代码
Aug 02 #Python
浅谈Python3中datetime不同时区转换介绍与踩坑
Aug 02 #Python
You might like
mysql 全文搜索 技巧
2007/04/27 PHP
PHP备份/还原MySQL数据库的代码
2011/01/06 PHP
ThinkPHP Mobile使用方法简明教程
2014/06/18 PHP
通过php动态传数据到highcharts
2017/04/05 PHP
php实现银联商务公众号+服务窗支付的示例代码
2019/10/12 PHP
在模板页面的js使用办法
2010/04/01 Javascript
基于jquery实现拆分姓名的方法(纯JS版)
2013/05/08 Javascript
javascripit实现密码强度检测代码分享
2013/12/12 Javascript
回车直接实现点击某按钮的效果即触发单击事件
2014/02/27 Javascript
基于JavaScript实现生成名片、链接等二维码
2015/09/20 Javascript
JS小数运算出现多为小数问题的解决方法
2016/06/02 Javascript
laydate.js日期时间选择插件
2017/01/04 Javascript
jQuery EasyUI Panel面板组件使用详解
2017/02/28 Javascript
nodejs读写json文件的简单方法(必看)
2017/03/09 NodeJs
vue axios 二次封装的示例代码
2017/12/08 Javascript
js中call()和apply()改变指针问题的讲解
2019/01/17 Javascript
从0到1构建vueSSR项目之路由的构建
2019/03/07 Javascript
ES6新增的数组知识实例小结
2020/05/23 Javascript
[04:01]2014DOTA2国际邀请赛 TITAN告别Ohaiyo期望明年再战
2014/07/15 DOTA
对于Python中RawString的理解介绍
2016/07/07 Python
Python3转换html到pdf的不同解决方案
2019/03/11 Python
浅谈Pandas Series 和 Numpy array中的相同点
2019/06/28 Python
妙用itchat! python实现久坐提醒功能
2019/11/25 Python
学python最电脑配置有要求么
2020/07/05 Python
详解Python 中的容器 collections
2020/08/17 Python
python简单实现插入排序实例代码
2020/12/16 Python
HTML5 CSS3给网站设计带来出色效果
2009/07/16 HTML / CSS
AmazeUI折叠式卡片布局,整合内容列表、表格组件实现
2020/08/20 HTML / CSS
医院竞聘演讲稿
2014/05/16 职场文书
节约每一滴水演讲稿
2014/09/09 职场文书
2015年个人现实表现材料
2014/12/10 职场文书
2015年小学图书室工作总结
2015/05/18 职场文书
盗窃罪辩护词范文
2015/05/21 职场文书
乱世佳人观后感
2015/06/08 职场文书
工作态度怎么写
2015/06/25 职场文书
tensorboard 可视化之localhost:6006不显示的解决方案
2021/05/22 Python