R | 探索性数据分析 EDA

 

一、集中趋势和离中趋势

表示集中趋势的指标们:

 均值、中位数、众数、百分位数

异常值判定:

 3σ原则原则(还有很多别的原则):超出(μ-3σ,μ+3σ)的值,即超出箱线图上下边界的点

离散程度指标:

 极差(range)

 标准差(sta.dev)

 方差(variance)

 变异系数(CV):对标准差做去量纲化,消除两组数据间测量尺度和量纲的影响

通过箱线图来查看集中趋势 (通过R自带的鸢尾花数据集 iris)

iris
boxplot(iris[,2])

 

 二、相关系数(cor

Pearson相关系数

衡量两个数据集合是否在一条线上面,它用来衡量定距变量间的线性关系

Spearman相关系数

衡量排序(秩)一致性

Kendall相关系数

计算多个等级变量相关程度的一种相关量

 

# 工作时间和薪水
jobtime = c(14,12,11,12,11)
salary = c(20000,17000,1650,1670,540)

# cor 默认的 method 为 pearson
cor(jobtime,salary)

# 指定使用 spearman
cor(jobtime,salary, method="spearman")

相比于线性关系,案例中的时间与薪水的排序效果更明显,所以此处求得的 Spearman 比 Pearson 更大

 

 通过两两变量的组合图来查看相关关系(以iris数据集为例)

pairs(iris[,1:4])

通过图,就薛微可以看出来点线性关系

 

三、描述性统计

summary 函数:查看极值、上下四分位数、均值、中位数

summary(iris[,1:4])

 

fivenum:返回 极小值, 下四分位数,中位数,上四分位数,极大值

# 求单独一列的fivenum
fivenum(iris[,1])
# 求多列的fivenum,借助apply函数
apply(iris[,1:4],2,fivenum)

 

quantile:返回某分位数处的值

# 求单独一列的分位数
quantile(iris[,1], 0.3)
# 求多列的某分位数的值,借助apply函数
apply(iris[,1:4],2, function(x){return(quantile(x, 0.3))})

 

 Tip:解释一下 apply 函数

四、假设检验 

原理:小概率事件实际基本不可能发生

分类:参数检验、非参数检验

H0 原假设:想证明它是错的

H1 备择假设:希望它是对的

H1与“不相等”对应的是双侧检验,与“小于”相对应的是左侧检验,与“大于”相对应的是右侧检验。(显然hhhhhh)

 

 

案例:

单样本 t 检验

t.test(iris[,1]) 

双样本 t 检验

# 选取两个要做检验的对象
setosa_Sepal_Length = iris[which(iris$Species=="setosa"), "Sepal.Length"]
versicolor_Sepal_Length = iris[which(iris$Species=="versicolor"), "Sepal.Length"]
# 双样本 t 检验
t.test(setosa_Sepal_Length,versicolor_Sepal_Length)

 

 

 

别的写了再补充

posted @ 2020-03-15 17:46  机器快点学习  阅读(1529)  评论(0编辑  收藏  举报