R语言学统计【医学统计学 第四版】数据-R语言-图表-决策-Linux-Python

统计学第二章 R语言实现

2017-09-25  本文已影响76人  x2yline

第二章 计量资料的统计描述

知识清单:

求极差(range),做频数分布表和频数分布图(graph of frequency distribution),算术平均数(mean),几何均数(geometric mean),中位数与百分位数(median and percentile),四分位间距(quartile range),方差(variance),标准差(standard deviation),变异系数(coefficient of variance),正态分布(normal distribution),标准正态分布(standard normal distribution)

图形美观,5:7或7:5

使用R语言的内建实例数据框:faithful

> head(faithful)

eruptions waiting

1     3.600      79

2     1.800      54

3     3.333      74

4     2.283      62

5     4.533      85

6     2.883      55

第一列eruptions代表火山喷发的持续时间,第二列代表距离下一次喷发的间隔时间

1. 计算极差(range)

> duration = faithful$eruptions     # the eruption durations

> max(duration)−min(duration)     # apply the max and min functions

[1] 3.5

> range(duration)

[1] 1.6 5.1

2. 频数分布

> duration = faithful$eruptions

> breaks = seq(1.5, 5.2, length.out = 12)

> duration.cut = cut(duration, breaks, right=FALSE)

right属性默认为TRUE,表示每个组段为右闭左开的一个区间

duration.cut为一个factor变量

> duration.freq = table(duration.cut)

> duration.freq

> cbind(duration.freq)

计算频率

> duration.relfreq = duration.freq / nrow(faithful)

展示为列的形式

> cbind(duration.freq)

>hist(duration, right=FALSE, breaks = breaks, labels =TRUE, freq = FALSE, col = "lightgray", border = "white")

tips: 控制输出小数点位数使用

> old = options(digits=1)

> options(old)    # restore the old option

3. 算术平均

> mean(faithful$eruptions)

4. 几何平均

> exp(mean(log(faithful$eruptions)))

> psych::geometric.mean(faithful$eruptions)

5. 中位数与百分位数

> quantile(faithful$eruptions, c(0.5, 0.6))

50%  60%

4.000 4.167

> median(faithful$eruptions)

[1] 4

> quantile(faithful$eruptions)

0%    25%    50%    75%    100%

1.60000 2.16275 4.00000 4.45425 5.10000

6. 四分位间距 interquartile range

> IQR(faithful$eruptions)

[1] 2.2915

7. 方差与标准差

> var(faithful$eruptions)

[1] 1.302728

> (sum((faithful$eruptions-mean(faithful$eruptions))^2))/(nrow(faithful)-1)

[1] 1.302728

> sd(faithful$eruptions)

[1] 1.141371

> sd(faithful$eruptions)^2

[1] 1.302728

8. 变异系数

> raster::cv(faithful$eruptions)

[1] 32.72483

> sd(faithful$eruptions)/mean(faithful$eruptions)*100

[1] 32.72483

9. 正态分布和标准正态分布

dnorm() 的返回值是正态分布概率密度函数,pnorm()返回值是正态分布的分布函数。函数qnorm()的返回值是给定概率p后的下分位点,rnorm()的返回值是n个正态分布随机数构成的向量。

已知某正态分布均值为72,标准差为15.2,求在72出的概率密度:

> dnorm(72, mean=72, sd=15.2)

[1] 0.0262462

已知某正态分布均值为72,标准差为15.2,求大于84的概率:

> pnorm(84, mean=72, sd=15.2, lower.tail=FALSE)

[1] 0.21492

已知某正态分布均值为0,标准差为1,求小于多少值时,其概率大于0.975

> qnorm(0.975, mean=0, sd=1, lower.tail=TRUE)

[1] 1.959964

生成服从正态分布,均值为0,标准差异1的100个数:

> rnorm(100, mean=0, sd=1)

参考:

http://www.r-tutor.com/elementary-statistics

上一篇下一篇

猜你喜欢

热点阅读