R语言分析R语言

生物统计与R语言(1)

2019-06-10  本文已影响0人  六博说
简介

  生物统计学是生物数学中最早形成的一大分支,它是在用统计学的原理和方法研究生物学的客观现象及问题的过程中形成的,生物学中的问题又促使生物统计学中大部分基本方法进一步发展。生物统计学是应用统计学的分支,它将统计方法应用到医学及生物学领域,对于生物医学领域科研人员及在读学生,理解好统计学的基本方法及原理,才能真正准确的运用统计学的方法分析解释科研数据,得出更令人信服的结论,本系列专题将配合统计开源工具R语言系统介绍统计学在生物医学领域的原理及用法。

统计的含义
重要概念
基础统计推论方法
两大定律

大数定律:重要实验测试足够多,样本均值就会趋近于总体的期望值。
中心极限定理:许多小的随机因素的叠加总会使总体的分布趋近于正态分布;不管总体分布是什么,只要样本量足够大,就可以把样本的均值视为服从正态分布。

描述性统计
实操栗子
samsize = 1000
age = rnorm(n=samsize, mean = 50, sd = 10)
smoke = as.factor(c(rep(0,500),rep(1,500)))
height = log2(rnorm(n=samsize, mean = 3.2, sd = 0.1))
weight = 35 * height + rnorm(n=samsize, mean = 10, sd = 2)
weight[82]=weight[82]+20 #outlier
#plot(height, weight)
final_data=data.frame(age,(smoke),height,weight)
head(final_data)
       age X.smoke.   height   weight
1 41.29590        0 1.640680 65.68003
2 31.77156        0 1.767688 70.66953
3 68.14326        0 1.654074 68.69767
4 57.88502        0 1.648028 64.08887
5 44.27702        0 1.625258 67.79374
6 54.55705        0 1.676883 69.97073
dim(final_data)
[1] 1000    4
boxplot(final_data$height)
> is(final_data$age)
[1] "numeric" "vector" 
> is(final_data$height)
[1] "numeric" "vector" 
> is(final_data$weight)
[1] "numeric" "vector" 
> is(final_data$X.smoke.)
[1] "factor"              "integer"            
[3] "oldClass"            "numeric"            
[5] "vector"              "data.frameRowLabels"

age/height/weight是连续型
smoke是离散型
>summary(final_data$height)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
  1.512   1.653   1.680   1.681   1.713   1.794 
> sd(final_data$height)
[1] 0.04622406
> var(final_data$height)
[1] 0.002136664
> 

数据分布情况

hist(final_data$height)
boxplot(final_data$height)


离散型变量:
吸烟情况
列表

> table(final_data$X.smoke.)

  0   1 
500 500 

饼图

> prop1=sum(final_data$X.smoke.==1)/length(final_data$X.smoke.)
> prop0=sum(final_data$X.smoke.==0)/length(final_data$X.smoke.)
> pie(c(prop0,prop1),labels=c("non-smk","smk"))

两个变量之间的关系
两个连续变量(身高体重):
散点图

> plot(height,weight)

一个离散一个连续:
吸烟和身高

boxplot(final_data$height~final_data$X.smoke.)
> is.na.data.frame(final_data)
        age X.smoke. height weight
   [1,] FALSE    FALSE  FALSE  FALSE
   [2,] FALSE    FALSE  FALSE  FALSE
   [3,] FALSE    FALSE  FALSE  FALSE
   [4,] FALSE    FALSE  FALSE  FALSE
   [5,] FALSE    FALSE  FALSE  FALSE
   [6,] FALSE    FALSE  FALSE  FALSE

> sum(is.na(final_data))
[1] 0

检查异常值


参考材料:

关注微信公众号,第一时间获取更新


上一篇下一篇

猜你喜欢

热点阅读