R语言之描述性和探索性分析

探索性分析简称EDA

一、基本描述性统计量
1.summary函数
可以得到最大值、最小值、中位数和均值

2.四分位数
四分位数可以通过quantile函数得到,diff得到各分位数的之差
> library(RSADBE)
> data("TheWALL")
> quantile(TheWALL$Score)
> diff(quantile(TheWALL$Score))

3.极值
range返回最大值和最小值

4.极差
diff(range())返回极差

5.四分位间距
IQR函数返回四分位间距

二、茎叶图和直方图

1.茎叶图

可以使用base包的stem函数和alpack包的stem.leaf.backback函数实现

2.直方图
直方图可以通过hist函数和histogram函数实现,我们使用galton数据作为举例
> data(galton)
> par(mfrow=c(2,2))
> hist(galton$parent,breaks="FD",xlab="Height of Parent", main="Histogram for Parent Height with Freedman-Diaconis Breaks",xlim=c(60,75))
> hist(galton$parent,xlab="Height of Parent",main= "Histogram for Parent Height with Sturges Breaks",xlim=c(60,75))
> hist(galton$child,breaks="FD",xlab="Height of Child", main="Histogram for Child Height with Freedman-Diaconis Breaks",xlim=c(60,75))
> hist(galton$child,xlab="Height of Child",main="Histogram for Child Height with Sturges Breaks",xlim=c(60,75))

此外,还有一些选项可以对直方图进行设置,这些选项适用于大多数图形命令
col:图形颜色
main:图形标题
xlab:X轴标题
ylab:Y轴标题
xlim:X轴范围
ylim:Y轴范围
break:设置直方图的分割范围
freq:逻辑选项,TRUE为生成频率数据,FALSE为生成概率密度数据

三、密度函数图
连续随机变量更多都是通过密度函数图来描述,通过density()函数,可以得到数据的密度估计,其结果是一系列x和y的坐标,可以通过这些坐标绘制密度函数图,该函数的格式如下
density(data,bw="",kernel="",na.rm=FALSE)
其中,data要求为向量类型,bw为数据的密度内核估计,kernel为平滑种类,na.rm为对NA值的处理,默认为不移除NA值,但是如果出现NA,则结果会出现错误。

density()函数的结果为列表类型,可以通过$符号选择结果中的变量。

可以通过plot(density())组合绘制密度函数图,并通过lines()函数向图形中添加线。

四、数据汇总

1.向量的汇总统计
max
min
length
sum
mean
median
sd
var
mad:得到中位数绝对偏差
summary:得到最大值、最小值、中位数和均值
quantile:得到分位数,默认是返回四分位数,可以自己修改
fivenum:得到最小值、四分位低值、中位数、四分位高值、最大值
cumsum:累积合计
cummax:累积最大值
cummin:累积最小值
cumprod:累乘

如果向量中存在NA值,那么最终也会返回NA值,可以使用选项na.rm=TRUE将NA值忽略,其中length函数没有na.rm选项,可以先使用na.omit()函数进行处理,如length(na.omit(data))

2.数据框的汇总统计
max
min
sum
fivenum
length:返回数据框的列数
summary:返回每一列的描述性数值
rowMeans
rowSums
colMeans
colSums
apply:可以将上述命令合并,格式为apply(X,MARGIN,FUN...)其中MARGIN为1或2,1表示行,2表示列FUN为计算方式,还可以定义na.rm=TRUE进行忽略NA值
prop.table(data,margin=1、2,FUN):返回每个数值的占比,默认为总数占比,margin=1为行占比,margin=2为列占比,FUN为设置的函数,
addmargins(data,margin=1、2,FUN):返回根据FUN计算的行或列的值,和prop.table类似,只不过这不是占比,而是实际计算的数值。

3.矩阵的汇总统计

max
min
sum
fivenum
length:返回矩阵的单元格数
summary:返回每一列的描述性数值
mean(data[,2]):计算第二列的均值
rowMeans
rowSums
colMeans
colSums
apply:
prop.table(data,margin=1、2):返回每个数值的占比,默认为总数占比,margin=1为行占比,margin=2为列占比。
矩阵和数据框类似,但是不同的是矩阵为一个整体,不能用$选择单个列,因此sum等函数是对矩阵整体进行计算,可以使用[]进行选择,其余函数的基本用法和数据框类似。

4.列表的汇总统计
max(data$var)
min(data$var)
sum(data$var)
fivenum(data$var)
length:返回矩阵的单元格数
summary:返回每一列的描述性数值
mean(data[,2]):计算第二列的均值
lapply:输出列表类型的结果
sapply:输出矩阵类型的结果

总的来说,列表的汇总统计函数和其他数据结构类似,但是不同的是每个都要使用$指定变量才行,此外,apply()函数不能使用列表,需要使用其变种lapply和sapply,二者只是输出结果的数据类型不同而已。

5.表格的汇总统计

max
min
sum
fivenum
length:返回数据框的列数
summary:返回每一列的描述性数值
rowMeans
rowSums
colMeans
colSums
apply
prop.table(data,margin=1、2):返回每个数值的占比,默认为总数占比,margin=1为行占比,margin=2为列占比。

时间: 2024-08-12 09:31:06

R语言之描述性和探索性分析的相关文章

R语言对苏州天气的分析及预测 天气篇

坐标苏州,来这边刚好一年的时间,又到四月,梅雨季节(?)最能感受到烟雨江南的朦胧美,才怪!实际上的心情是,"清明时节雨纷纷,放假宅家欲断魂",已经无力吐槽这春夏交战冬天突围的诡异天气变化了,正好有时间,所以想用高大上的技术语言来解读一下苏州的天气特点. 历史天气数据来源:http://tianqi.2345.com/wea_history/54511.htm,这是北京的历史数据,采样城市北京.上海.苏州.长沙.广州.一共采集了2011-1-1到2015-4-2这四年三个月共1542(3

R语言对苏州天气的分析及预测 温度篇

温度篇     前面已经讲了苏州的天气特点,还是用相同的数据,做接下来的苏州气温特点的分析预测,是的预测在这里! 首先看下2011年到2015年苏州整体的温度表现是什么样的. plot(suzhou$highestTemp,type="l",col="red",main="苏州2011-2015年气温图",xlab="时间轴",ylab="温度℃") lines(suzhou$lowestTemp,type

SPSS——描述性统计分析——探索性分析

菜单 除了可以计算基本的统计量之外,也可以给出一些简单的检验结果和图形,有助于用户进一步的分析数据.使得用户能够从大量的分析结果之中挖掘到所需要的统计信息. 适用范围 对资料的性质.分布特点等完全不清楚的时候 Analyze -> Descriptive Statistics -> Expore 数据源 ceramics.sav 因变量列表 用于选入待分析的变量 因子列表 用于选择分组变量,根据该变量取值不同,分组分析因变量列表中的变量 标注个案 选择标签变量 统计量 描述性 计算一般的描述性

R语言做地图上的分析

R和ggplot可视化功能非常强大,了解了一下其中的地图做法,发现R做世界地图.美国地图非常容易,但做中国地图就太麻烦了,需要自己DIY. DIY也有多种方式,但网络上各种帖子教程的出图效果都不太理想,达不到工作用要求.下面是我的摸索过程,记录如下备忘,也请教于R老师们. 参考书目:ggplot2,R graphics cookbook,参考贴:http://site.douban.com/182577/widget/notes/10568279/note/257898418/ 0.引子 R里有

R语言画全基因组关联分析中的曼哈顿图(manhattan plot)

1.在linux中安装好R 2.准备好画曼哈顿图的R脚本即manhattan.r,manhattan.r内容如下: #!/usr/bin/Rscript #example : Rscript plot_manhatom.r XXX.assoc XXX.pdf argv <- commandArgs() #define the function to plot the manhatton and quantitle-quantitle plot plot_manhatton<-function(

吴裕雄--天生自然 R语言开发学习:功效分析

#----------------------------------------# # R in Action (2nd ed): Chapter 10 # # Power analysis # # requires packages pwr to be installed # # install.packages("pwr") # #----------------------------------------# par(ask=TRUE) library(pwr) # t te

吴裕雄--天生自然 R语言开发学习:功效分析(续一)

#----------------------------------------# # R in Action (2nd ed): Chapter 10 # # Power analysis # # requires packages pwr to be installed # # install.packages("pwr") # #----------------------------------------# par(ask=TRUE) library(pwr) # t te

R语言重要数据集分析研究——需要整理分析阐明理念

1.R语言重要数据集分析研究需要整理分析阐明理念? 上一节讲了R语言作图,本节来讲讲当你拿到一个数据集的时候如何下手分析,数据分析的第一步,探索性数据分析. 统计量,即统计学里面关注的数据集的几个指标,常用的如下:最小值,最大值,四分位数,均值,中位数,众数,方差,标准差,极差,偏度,峰度 先来解释一下各个量得含义,浅显就不说了,这里主要说一下不常见的 众数:出现次数最多的 方差:每个样本值与均值的差得平方和的平均数 标准差:又称均方差,是方差的二次方根,用来衡量一个数据集的集中性 极差:最大值

R语言教程:写给高级入门者的数据打理攻略

http://developer.51cto.com/art/201312/423612_all.htm 原文地址 如果大家还未完全熟悉R语言.甚至不能轻松利用它实现最基本的处理任务,我建议各位先查阅其它指导文章.帮助自己积累对R语言的认识.但如果大家已经拥有一定的背景知识,希望能够进一步提升自己的开发技能——或者单纯只是想看看R语言如何完成文章中罗列的四项任务——那么请跟着我继续阅读. 学习如何添加column.计算总和.对结果排序以及数据改造. 强大的能力在带来责任之外,也给我们增添了恼人的