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

author author     2022-08-24     147

关键词:

探索性分析简称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为列占比。

[读书笔记]r语言实战(十四)主成分和因子分析

主成分分析和探索性因子分析是用来探索和简化多变量复杂关系的常用方法,能解决信息过度复杂的多变量数据问题。主成分分析PCA:一种数据降维技巧,将大量相关变量转化为一组很少的不相关变量,这些无关变量称为主成分... 查看详情

r语言使用psych包进行主成分分析pca和探索性因子分析efa的常用函数介绍:principalfafa.parallelfactor.plotfa.diagramscree

R语言使用psych包进行主成分分析PCA和探索性因子分析EFA的常用函数介绍:principal、fa、fa.parallel、factor.plot、fa.diagram、scree目录 查看详情

r语言-基本统计分析

目的:  1.描述性统计分析  2.频数表和;列连表  3.相关系数和协方差  4.t检验  5.非参数统计在上一节中使用了图形来探索数据,下一步就是给出具体的数据来描述每个变量的分布和关系1.描述性统计分析  探究案例:... 查看详情

r语言

...> 结果报告 => 发布结果1.数据分析  1-1.探索性数据分析    -数据分析中的必要步骤    -了解数据    -作图  1-2.统计推断    -基于数据得出正式结论的过程(不确定性)    -候选人A... 查看详情

r语言explore包进行探索性数据分析实战(edaexploratorydataanalysis):基于iris数据集

R语言explore包进行探索性数据分析实战(EDA、exploratorydataanalysis):基于iris数据集目录 查看详情

【r语言第3篇】用r进行主成分分析

参考技术A主成分分析和探索性因子分析是两种用来探索和简化多变量复杂关系的常用方法。主成分分析(PCA)是一种将数据降维技巧,它将大量相关变量转化成一组很少的不相关变量,这些无相关变量称为主成分。探索性因子... 查看详情

r语言关联分析之啤酒和尿布

关联分析概述啤酒和尿布的故事,我估计大家都听过,这是数据挖掘里面最经典的案例之一。它分析的方法就关联分析。关联分析,顾名思义,就是研究不同商品之前的关系。这里就发现了啤酒和尿布这两个看起来毫不相关的东... 查看详情

r语言svm支持向量机模型数据分类实战:探索性数据分析模型调优特征选择核函数选择

R语言SVM支持向量机模型数据分类实战:探索性数据分析、模型调优、特征选择、核函数选择目录R语言SVM支持向量机模型数据分类实战:探索性数据分析、模型调优、特征选择、核函数选择​#SVM基本原理#案例分析 查看详情

r语言-来自prosper的贷款数据探索

案例分析:Prosper是美国的一家P2P在线借贷平台,网站撮合了一些有闲钱的人和一些急用钱的人。用户若有贷款需求,可在网站上列出期望数额和可承受的最大利率。潜在贷方则为数额和利率展开竞价。    本项目拟通过该数... 查看详情

r语言随机森林randomforest逻辑回归logisitc预测心脏病数据和可视化分析|附代码数据

...目标是在心脏研究的数据集上建立一些预测模型,并建立探索性和建模方法。但什么是心脏研究?研究大纲介绍数据集和研究的目标探索数据集可视化使用Chi-Square独立检验、CramersV检验和GoodmanKruskaltau值对数据集进行探索预测模... 查看详情

r语言单因素方差分析(one-wayanova)实战:探索性数据分析(eda)单因素方差分析模型结果解读(检查模型假设)分析不同分组的差异tukeyhsd单因素方差分析的结果总结

R语言单因素方差分析(One-WayANOVA)实战:探索性数据分析(EDA)、单因素方差分析模型结果解读(检查模型假设)、分析不同分组的差异TukeyHSD、单因素方差分析的结果总结目录R语言单因素方差分析(One-WayANOVA)实战:探索性... 查看详情

r语言生存分析之cox比例风险模型构建及亚组森林图绘制示例

R语言生存分析之COX比例风险模型构建及亚组森林图绘制示例森林图(forestplots)是以统计指标和统计分析方法为基础,用数值运算结果绘制出的图型。它在平面直角坐标系中,以一条垂直的无效线(横坐标刻度为1或0)为中心,用平行于横... 查看详情

r语言生存分析之竞争风险模型

R语言生存分析之竞争风险模型竞争风险模型(CompetingRiskModel)是一种处理多种潜在结局生存数据的分析方法,早在1999年Fine和Gray就提出了部分分布的半参数比例风险模型,通常使用的终点指标是累积发生率函数(cumulativeincidencef... 查看详情

ios底层探索之多线程—gcd不同队列源码分析(代码片段)

...晰的认识,那么本篇博客将继续介绍GCD的队列和源码分析。iOS底层探索之多线程(一)—进程和线程iOS底层探索之多线程(二)—线程和锁iOS底层探索之多线程(三)—初识GCDiOS底层探索之多线程(四)—GCD的队列1.主队列分析查看主队... 查看详情

ios底层探索之多线程(十五)—@synchronized源码分析(代码片段)

...四)—GCD的队列iOS底层探索之多线程(五)—GCD不同队列源码分析iOS底层探索之多线程(六)—GCD源码分析(sync同步函数、async异步函数) 查看详情

ios底层探索之block——block的探索和源码分析(代码片段)

...变量的值。那么本篇博客将对继续对block的底层原理进行分析。iOS底层探索之Bl 查看详情

ios底层探索之多线程—gcd源码分析(栅栏函数)(代码片段)

...数的同步性/异步性还有单例的底层源码,作了详细的分析,那么本篇博客将对栅栏函数,调度组等底层源码进行探索分析!iOS底层探索之多线程(一)—进程和线程iOS底层探索之多线程(二)—线程和锁iOS底层探索之... 查看详情

r语言简介

概况:R是统计领域广泛使用的诞生于1980年左右的S语言的一个分支。可以认为R是S语言的一种实现。而S语言是由AT&T贝尔实验室开发的一种用来进行数据探索、统计分析和作图的解释型语言。作为一种统计分析软件,是集统计... 查看详情