在实际科研中,常常会出现pvalue = 0.000000000123类似的形式,甚至出现p = 0,遇到如此尴尬的情况怎么办呢?
其实scales::pvalue()函数已经帮咱们设计好了,来看具体代码:

> lm(hwy~displ+drv, data=mpg) %>%
+ tidy()
# A tibble: 4 x 5
term estimate std.error statistic p.value
<chr> <dbl> <dbl> <dbl> <dbl>
1 (Intercept) 30.8 0.924 33.4 4.21e-90
2 displ -2.91 0.218 -13.4 1.73e-30
3 drvf 4.79 0.530 9.05 6.40e-17
4 drvr 5.26 0.734 7.17 1.03e-11
> lm(hwy~displ+drv, data=mpg) %>%
+ tidy() %>%
+ mutate(p.value=pvalue(p.value))
# A tibble: 4 x 5
term estimate std.error statistic p.value
<chr> <dbl> <dbl> <dbl> <chr>
1 (Intercept) 30.8 0.924 33.4 <0.001
2 displ -2.91 0.218 -13.4 <0.001
3 drvf 4.79 0.530 9.05 <0.001
4 drvr 5.26 0.734 7.17 <0.001
聪明的你,会发现,pvalue直接被处理成了能直接上图的格式。
参考链接:
Andrew Heiss的官方推特
网友评论