相关与t检验

面向 SAS 用户的 R

Melinda Higgins, PhD

Research Professor/Senior Biostatistician Emory University

相关性:SAS 与 R 对比

SAS PROC CORR 与 R psych::corr.test() 对应

面向 SAS 用户的 R

相关分析的 SAS 与 R 代码

面向 SAS 用户的 R

使用 psych 包计算相关

# Correlations with psych::corr.test()
daviskeep %>%
  select(bmi, weight, height) %>%
  psych::corr.test()
Call:psych::corr.test(x = .)
Correlation matrix
        bmi weight height
bmi    1.00   0.88   0.38
weight 0.88   1.00   0.77
height 0.38   0.77   1.00
Sample Size
[1] 199
Probability values (Entries above the
diagonal are adjusted for multiple tests.)
       bmi weight height
bmi      0      0      0
weight   0      0      0
height   0      0      0
面向 SAS 用户的 R

SAS 与 R 的散点图矩阵

SAS PROC CORR 的 plots matrix 语句与 GGally 包的 ggpairs

面向 SAS 用户的 R

用于创建散点图矩阵的 SAS 与 R 代码

面向 SAS 用户的 R

散点图矩阵 - GGally::ggpairs()

 

 

# Matrix plot with GGally::ggpairs()
daviskeep %>%
  select(bmi, weight, height) %>%
  GGally::ggpairs()

使用 GGally 包的 ggpairs 函数绘制散点图矩阵

面向 SAS 用户的 R

散点图矩阵 - 按组 ggpairs

 

 

# Color points by sex group
daviskeep %>%
  select(bmi, weight, height, sex) %>%
  GGally::ggpairs(aes(color = sex))

按性别使用 GGally 包的 ggpairs 函数绘制散点图矩阵

面向 SAS 用户的 R

分组描述性统计

无组内计数

# Get mean and sd for bmi by sex
daviskeep %>% group_by(sex) %>%
  select(sex, bmi) %>%
  summarise(across(everything(),
                   list(mean = ~ mean(.x),
                        sd = ~ sd(.x))))
# A tibble: 2 × 3
  sex   bmi_mean bmi_sd
  <fct>    <dbl>  <dbl>
1 F         21.0   2.18
2 M         23.9   3.12

含组内计数

# Add N = n(), get mean, sd for bmi by sex
daviskeep %>% group_by(sex) %>%
  select(sex, bmi) %>%
  summarise(across(everything(), 
                   list(mean = ~ mean(.x), 
                        sd = ~ sd(.x))),
            N = n())
# A tibble: 2 × 4
  sex   bmi_mean bmi_sd     N
  <fct>    <dbl>  <dbl> <int>
1 F         21.0   2.18   111
2 M         23.9   3.12    88
1 https://dplyr.tidyverse.org/reference/context.html
面向 SAS 用户的 R

t检验:SAS 与 R

SAS PROC TTEST 类似于 R 的 var.test 与 t.test

面向 SAS 用户的 R

SAS 与 R 的合并与非合并 t 检验代码

面向 SAS 用户的 R

SAS 与 R 的合并与非合并 t 检验代码

面向 SAS 用户的 R

SAS 与 R 的合并与非合并 t 检验代码

面向 SAS 用户的 R

t检验 - 方差齐性检验

# Perform equal variance test
var.test(bmi ~ sex, data = daviskeep)
    F test to compare two variances

data:  bmi by sex
F = 0.48637, num df = 110, denom df = 87, p-value = 0.0003668

alternative hypothesis: true ratio of variances is not equal to 1

95 percent confidence interval:
 0.3244691 0.7221946
sample estimates:
ratio of variances
         0.4863699
面向 SAS 用户的 R

t检验 - 合并与非合并

# UNPOOLED t-test bmi by sex
t.test(bmi ~ sex,
       data = daviskeep)
Welch Two Sample t-test

data:  bmi by sex
t = -7.5158, df = 149.45,
  p-value = 4.819e-12
alternative hypothesis: true difference
  in means is not equal to 0
95 percent confidence interval:
 -3.716353 -2.169035
sample estimates:
mean in group F mean in group M
       20.95632        23.89901
# POOLED t-test bmi by sex
t.test(bmi ~ sex, data = daviskeep,
       var.equal = TRUE)
    Two Sample t-test

data:  bmi by sex
t = -7.8239, df = 197,
  p-value = 3.055e-13
alternative hypothesis: true difference
  in means is not equal to 0
95 percent confidence interval:
 -3.684428 -2.200960
sample estimates:
mean in group F mean in group M
       20.95632        23.89901
面向 SAS 用户的 R

一起探索鲍鱼的双变量关系!

面向 SAS 用户的 R

Preparing Video For Download...