基于R语言的数据分析和挖掘方法总结——描述性统计
1.1 方法简介
描述性统计包含多种基本描述统计量,让用户对于数据结构可以有一个初步的认识。
在此所提供之统计量包含:
- 基本信息:样本数、总和
- 集中趋势:均值、中位数、众数
- 离散趋势:方差(标准差)、变异系数、全距(最小值、最大值)、内四分位距(25%分位数、75%分位数)
- 分布描述:峰度系数、偏度系数
用户可选择多个变量同时进行计算,亦可选择分组变量进行多组别的统计量计算。
1.2 详细介绍
1.2.1 样本数和总和
1. R语言涉及的方法:length(x)
1.2.2 均值(Mean)
1. 公式
2. R语言实现方法:mean(x)
例如:
> mean(Nile)
[1] 919.35
1.2.3 中位数(Median)
1. 定义:
中位数描述数据中心位置的数字特征。大体上比中位数大或小的数据个数为整个数据的一半。对于对称分布的数据,均值与中位数比较接近;对于偏态分布的数据,均值与中位数不同。中位数的又一显著特点是不受异常值得影响,具有稳健性,因此它是数据分析中相当重要的统计量。
2. R语言实现方法:median(x)
例如:
> median(Nile)
[1] 893.5
1.2.4 众数(Mode)
1. 定义
众数(Mode),在统计分布上具有明显集中趋势点的数值,代表数据的一般水平(众数可以不存在或多于一个)。
2. R语言实现方法:names(which.max(table(x)))
1.2.5 方差(Variance)、标准差(Standard Deviation)
1. 定义
样本中各数据与样本平均数的差的平方和的平均数叫做样本方差;样本方差的算术平方根叫做样本标准差。样本方差和样本标准差都是衡量一个样本波动大小的量,样本方差或样本标准差越大,样本数据的波动就越大。
2. 公式
3. R语言实现方法:
- 方差:var(x)
- 标准差:sd(x)
1.2.6 变异系数(Coefficient of Variation)
1. 定义
在概率论和统计学中,变异系数,又称“离散系数”,是概率分布离散程度的一个归一化量度。
2. 公式
σ:标准差,μ:平均值
3. R语言实现方法:sd(x)/mean(x)
例如:
> sd(Nile)/mean(Nile)
[1] 0.184073
1.2.6 全距(Range)(最小值、最大值)
1. 定义
全距(Range),又称极差,是用来表示统计资料中的变异量数(measures of variation),其最大值与最小值之间的差距;即最大值减最小值后所得之数据。
全距可以用ω(读做omega)来表示。
2. 公式
ω:全距,X_H:最大值,X_L:最小值
3. R语言实现方法:
- 最大值:max(x)
- 最小值:min(x)
- 全距:range(x)
1.2.7 四分位距(Quartile)(25%分位数、75%分位数)
1. 定义
内四分位距(interquartile range, IQR),是描述统计学中的一种方法,以确定第三四分位数和第一四分位数的分别(即Q_1, Q_3的差距)。与方差、标准差一样,表示统计资料中各变量分散情形,但四分差更多为一种稳健统计(robust statistic)。
2. 公式
四分位距:IQR=Q3-Q1
四分位差:QD=(Q3-Q1)/2
3. R语言实现方法:
- quantile(x)
- fivenum(x)
- 四分位距: S<-fivenum(x) S[3]-S[1]
例如
> quantile(Nile)
0% 25% 50% 75% 100%
456.0 798.5 893.5 1032.5 1370.0
> fivenum(Nile)
[1] 456.0 798.0 893.5 1035.0 1370.0
1.2.8 峰度(Kurtosis)
1. 定义
在统计学中,峰度(Kurtosis)又称峰态系数,用来衡量实数随机变量概率分布的峰态。峰度高就意味着方差增大是由低频度的大于或小于平均值的极端差值引起的。峰度刻划不同类型的分布的集中和分散程序。设分布函数F(x)有中心矩μ_2, μ_4,则C_k=μ_4/(μ_2^2 )-3为峰度系数。
2. 公式
3. 距
1) 原点距(moment about origin)
对于正整数k,如果E(X^k)存在,称μ^k=E(X^k)为随机变量X的k阶原点矩。X的数学期望(均值)是X的一阶原点矩,即E(X)=μ^1。
2) 中心距(moment about centre)
对于正整数k,如果E(X)存在,且E([X – EX]k)也存在,则称E([X-EX]k)为随机变量X的k阶中心矩。如X的方差是X的二阶中心矩,即D(X)= E([X-EX]2)
4. R语言实现方法:kurtosis(x)
例如:
> library(PerformanceAnalytics)
> kurtosis(Nile)
[1] -0.3049068
1.2.9 偏度(Skewness)
1. 定义
在机率论和统计学中,偏度衡量实数随机变量概率分布的不对称性。偏度的值可以为正,可以为负或者甚至是无法定义。在数量上,偏度为负(负偏态)就意味着在概率密度函数左侧的尾部比右侧的长,绝大多数的值(包括中位数在内)位于平均值的右侧。偏度为正(正偏态)就意味着在概率密度函数右侧的尾部比左侧的长,绝大多数的值(包括中位数在内)位于平均值的左侧。偏度为零就表示数值相对均匀地分布在平均值的两侧,但不一定意味着其为对称分布。
2. 公式
当Cs>0时,概率分布偏向均值右则,Cs<0时,概率分布偏向均值左则。
3. R语言实现方法:skewness(x)
例如:
> library(PerformanceAnalytics)
> skewness(Nile)
[1] 0.3223697
基于R语言的数据分析和挖掘方法总结——描述性统计的更多相关文章
- 基于R语言的数据分析和挖掘方法总结——中位数检验
3.1 单组样本符号秩检验(Wilcoxon signed-rank test) 3.1.1 方法简介 此处使用的统计分析方法为美国统计学家Frank Wilcoxon所提出的非参数方法,称为Wilc ...
- 基于R语言的数据分析和挖掘方法总结——均值检验
2.1 单组样本均值t检验(One-sample t-test) 2.1.1 方法简介 t检验,又称学生t(student t)检验,是由英国统计学家戈斯特(William Sealy Gosset, ...
- 基于R语言的时间序列指数模型
时间序列: (或称动态数列)是指将同一统计指标的数值按其发生的时间先后顺序排列而成的数列.时间序列分析的主要目的是根据已有的历史数据对未来进行预测.(百度百科) 主要考虑的因素: 1.长期趋势(Lon ...
- 基于R语言的ARIMA模型
A IMA模型是一种著名的时间序列预测方法,主要是指将非平稳时间序列转化为平稳时间序列,然后将因变量仅对它的滞后值以及随机误差项的现值和滞后值进行回归所建立的模型.ARIMA模型根据原序列是否平稳以及 ...
- 概率图模型 基于R语言 这本书中的第一个R语言程序
概率图模型 基于R语言 这本书中的第一个R语言程序 prior <- c(working =0.99,broken =0.01) likelihood <- rbind(working = ...
- Twitter基于R语言的时序数据突变检测(BreakoutDetection)
Twitter开源的时序数据突变检测(BreakoutDetection),基于无参的E-Divisive with Medians (EDM)算法,比传统的E-Divisive算法快3.5倍以上,并 ...
- 对数据集做标准化处理的几种方法——基于R语言
数据集——iris(R语言自带鸢尾花包) 一.scale函数 scale函数默认的是对制定数据做均值为0,标准差为1的标准化.它的两个参数center和scale: 1)center和scale默认为 ...
- 基于R语言的航空公司客户价值分析
分析航空公司现状 1.行业内竞争 民航的竞争除了三大航空公司之间的竞争之外,还将加入新崛起的各类小型航空公司.民营航空公司,甚至国外航空巨头.航空产品生产过剩,产品同质化特征愈加明显,于是航空公司从价 ...
- R语言基因组数据分析可能会用到的data.table函数整理
R语言data.table包是自带包data.frame的升级版,用于数据框格式数据的处理,最大的特点快.包括两个方面,一方面是写的快,代码简洁,只要一行命令就可以完成诸多任务,另一方面是处理快,内部 ...
随机推荐
- js获取object类型所有的键值对
万物皆对象,而对象完全可以用键值对来表示,所以,在js中,也是通过键值对来表示对象的,在开发中,我在修改的时候,知道属性值可以直接用点.符号来获取值,但是写common.js的时候,发现这个属性名称是 ...
- Oracle----oracle编程总结
1,SEQUENCE的使用 问题:在MSSQL中,我们可以通过设置自增长来作为主键,但是oracle里面没有这个 解决方案:使用SEQUENCE来实现,具体步骤如下 (1)首先建立一个序列(就是每次查 ...
- 编译包中的 Servlet
编译包中的类与编译其他的类没有什么大的不同.最简单的方法是让您的 java 文件保留完全限定路径,如上面提到的类,将被保留在 com.myorg 中.您还需要在 CLASSPATH 中添加该目录. 假 ...
- python django -4 模板
模板介绍 作为Web框架,Django提供了模板,可以很便利的动态生成HTML 模版系统致力于表达外观,而不是程序逻辑 模板的设计实现了业务逻辑(view)与显示内容(template)的分离,一个视 ...
- node.js 入门
什么是Node.js?还服务器端javascript?对于这个概念我在这篇文章不做解释,可以自己去搜索了解下,服务器端js不是新技术,只是最近的node.js的火爆让他爆发了,我会在以后的文章里解释什 ...
- Python+selenium打开或关闭浏览器
Python+selenium打开或关闭浏览器 一.打开或关闭火狐浏览器 1. 初始化一个webdriver实例对象driver,然后打开和关闭firefox浏览器.要用selenium打 ...
- 浅谈DNS
什么叫域名解析 域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站一种服务.IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址.域名解析就是域 ...
- MySQL的limit子句
1.理解: limit用来取结果集中的固定几条记录 2.参数: limit offset,pagesize offset:偏移量,为0时,可以省略 pagesize:每页显示的行数,通常是固定的 0表 ...
- Retrofit学习笔记(一)
github上的介绍,简单明了 Type-safe HTTP client for Android and Java by Square, Inc. http://square.github.io/r ...
- Introduction to Mathematical Thinking - Week 9
错题 评分出错 题目要求的是 "any" ,而答案只给出了一个.所以认为回答者没有理解题意,连 any 都没有理解.所以 0 分. 第一,标准的归纳法只能对自然数使用,而题目要求的 ...