- Python 数据科学教程
- Python 数据科学 - 首页
- Python 数据科学 - 入门
- Python 数据科学 - 环境设置
- Python 数据科学 - Pandas
- Python 数据科学 - Numpy
- Python 数据科学 - SciPy
- Python 数据科学 - Matplotlib
- Python 数据处理
- Python 数据操作
- Python 数据清洗
- Python 处理 CSV 数据
- Python 处理 JSON 数据
- Python 处理 XLS 数据
- Python 关系数据库
- Python NoSQL 数据库
- Python 日期和时间
- Python 数据整理
- Python 数据聚合
- Python 读取 HTML 页面
- Python 处理非结构化数据
- Python 词法分析
- Python 词干提取和词形还原
- Python 数据可视化
- Python 图表属性
- Python 图表样式
- Python 箱线图
- Python 热力图
- Python 散点图
- Python 气泡图
- Python 3D 图表
- Python 时间序列
- Python 地理数据
- Python 图数据
Python - 集中趋势测量
从数学角度来看,集中趋势是指测量数据集值的位置中心或分布。它可以帮助了解数据集的平均值,以及值在数据集中的分散程度。这反过来有助于评估新输入融入现有数据集的可能性,从而评估成功的概率。
可以使用 pandas Python 库中的方法计算三种主要的集中趋势测量值。
平均值 - 它是数据的平均值,等于值之和除以值的数量。
中位数 - 当值按升序或降序排列时,它是分布中的中间值。
众数 - 它是分布中出现频率最高的数值。
计算平均值和中位数
可以直接使用 pandas 函数来计算这些值。
import pandas as pd #Create a Dictionary of series d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack', 'Lee','Chanchal','Gasper','Naviya','Andres']), 'Age':pd.Series([25,26,25,23,30,29,23,34,40,30,51,46]), 'Rating':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8,3.78,2.98,4.80,4.10,3.65])} #Create a DataFrame df = pd.DataFrame(d) print "Mean Values in the Distribution" print df.mean() print "*******************************" print "Median Values in the Distribution" print df.median()
其输出如下:
Mean Values in the Distribution Age 31.833333 Rating 3.743333 dtype: float64 ******************************* Median Values in the Distribution Age 29.50 Rating 3.79 dtype: float64
计算众数
根据数据是连续的还是是否存在频率最高的数值,分布中可能存在也可能不存在众数。我们下面使用一个简单的分布来找出众数。这里我们有一个在分布中具有最高频率的值。
import pandas as pd #Create a Dictionary of series d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack', 'Lee','Chanchal','Gasper','Naviya','Andres']), 'Age':pd.Series([25,26,25,23,30,25,23,34,40,30,25,46])} #Create a DataFrame df = pd.DataFrame(d) print df.mode()
其输出如下:
Age Name 0 25.0 Andres 1 NaN Chanchal 2 NaN Gasper 3 NaN Jack 4 NaN James 5 NaN Lee 6 NaN Naviya 7 NaN Ricky 8 NaN Smith 9 NaN Steve 10 NaN Tom 11 NaN Vin
广告