欢迎

本书写作过程中收到来自 Song LiJackieMeyang 的贡献,在此表示感谢,我们欢迎更多的人参与改进本书。

本书搬迁过程中更新、替换了原稿中的很多代码,现在与本书配套的 R 软件版本是 R version 4.0.2 (2020-06-22),我们同时也在 R 版本 3.6.1 中完成测试。为方便读者复现本书中的计算结果和统计图形,同时也为了方便在 Travis 上自动测试贡献者提交的 PR 和自动部署每次提交的修改,本书的运行环境已经被打包成 Docker 镜像,托管在 Docker Hub 上,镜像地址是 https://hub.docker.com/r/xiangyunhuang/msg-book, 读者可从 Docker Hub 上下载,也可根据目录 docker/ 下的 Dockerfile 本地构建。

软件信息

本书是在 RStudio 里用 R Markdown (Xie, Allaire, and Grolemund 2018) 编辑的,bookdown (Xie 2016) 组织各个章节的 Rmd 文件,knitr (Xie 2015) 运行 Rmd 文件中的 R 代码块,并将 Rmd 文件转化为 md 文件,借助 Pandoc 将 md 文件转化为 html 和 tex 文件,在 TinyTeX 的作用下,同时输出 pdf 格式的书籍。

sessionInfo(.packages(T))
## R version 4.0.2 (2020-06-22)
## Platform: x86_64-pc-linux-gnu (64-bit)
## Running under: Ubuntu 16.04.6 LTS
## 
## Matrix products: default
## BLAS:   /usr/lib/openblas-base/libblas.so.3
## LAPACK: /usr/lib/libopenblasp-r0.2.18.so
## 
## locale:
##  [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
##  [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
##  [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
##  [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
##  [9] LC_ADDRESS=C               LC_TELEPHONE=C            
## [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       
## 
## attached base packages:
##  [1] base      compiler  datasets  graphics  grDevices grid      methods  
##  [8] parallel  splines   stats     stats4    tcltk     tools     utils    
## 
## other attached packages:
##   [1] abind_1.4-5               alphahull_2.2            
##   [3] animation_2.6             aplpack_1.3.3            
##   [5] askpass_1.1               assertthat_0.2.1         
##   [7] av_0.5.0                  backports_1.1.9          
##   [9] base64enc_0.1-3           BH_1.72.0-3              
##  [11] bitops_1.0-6              bookdown_0.20            
##  [13] broom_0.7.0               callr_3.4.4              
##  [15] car_3.0-9                 carData_3.0-4            
##  [17] caTools_1.18.0            cellranger_1.1.0         
##  [19] classInt_0.4-3            cli_2.0.2                
##  [21] clipr_0.7.0               coda_0.19-3              
##  [23] colorspace_1.4-1          commonmark_1.7           
##  [25] conquer_1.0.2             corrplot_0.84            
##  [27] cowplot_1.1.0             cpp11_0.2.1              
##  [29] crayon_1.3.4              crosstalk_1.1.0.1        
##  [31] curl_4.3                  data.table_1.13.0        
##  [33] DBI_1.1.0                 deldir_0.1-28            
##  [35] dendextend_1.14.0         desc_1.2.0               
##  [37] digest_0.6.25             dplyr_1.0.2              
##  [39] e1071_1.7-3               egg_0.4.5                
##  [41] ellipsis_0.3.1            evaluate_0.14            
##  [43] exactRankTests_0.8-31     fansi_0.4.1              
##  [45] farver_2.0.3              fastmap_1.0.1            
##  [47] filehash_2.4-2            forcats_0.5.0            
##  [49] foreach_1.5.0             formatR_1.7              
##  [51] fun_0.2                   gclus_1.3.2              
##  [53] gdata_2.18.0              gdtools_0.2.2            
##  [55] generics_0.0.2            GGally_2.0.0             
##  [57] gganimate_1.0.6           ggplot2_3.3.2            
##  [59] ggpointdensity_0.1.0      ggpubr_0.4.0             
##  [61] ggrepel_0.8.2             ggsci_2.9                
##  [63] ggsignif_0.6.0            gifski_0.8.6             
##  [65] glue_1.4.2                goftest_1.2-2            
##  [67] gplots_3.0.4              gridExtra_2.3            
##  [69] gtable_0.3.0              gtools_3.8.2             
##  [71] haven_2.3.1               heatmaply_1.1.1          
##  [73] hexbin_1.28.1             highr_0.8                
##  [75] hms_0.5.3                 htmltools_0.5.0          
##  [77] htmlwidgets_1.5.1         httpuv_1.5.4             
##  [79] httr_1.4.2                igraph_1.2.5             
##  [81] isoband_0.2.2             iterators_1.0.12         
##  [83] jsonlite_1.7.1            km.ci_0.5-2              
##  [85] KMsurv_0.1-5              knitr_1.29               
##  [87] labeling_0.3              later_1.1.0.1            
##  [89] lazyeval_0.2.2            leaflet_2.0.3            
##  [91] leaflet.providers_1.9.0   lifecycle_0.2.0          
##  [93] lme4_1.1-23               lmtest_0.9-38            
##  [95] lpSolve_5.6.15            magick_2.4.0             
##  [97] magrittr_1.5              manipulateWidget_0.10.1  
##  [99] maps_3.3.0                maptools_1.0-2           
## [101] markdown_1.1              MatrixModels_0.4-1       
## [103] matrixStats_0.56.0        maxstat_0.7-25           
## [105] mime_0.9                  miniUI_0.1.1.1           
## [107] minqa_1.2.4               misc3d_0.9-0             
## [109] MSG_0.5                   munsell_0.5.0            
## [111] mvtnorm_1.1-1             network_1.16.0           
## [113] nloptr_1.2.2.2            openssl_1.4.2            
## [115] openxlsx_4.1.5            pbkrtest_0.4-8.6         
## [117] pdftools_2.3.1            pillar_1.4.6             
## [119] pkgbuild_1.1.0            pkgconfig_2.0.3          
## [121] pkgload_1.1.0             plot3D_1.3               
## [123] plotly_4.9.2.1            plotrix_3.7-8            
## [125] plyr_1.8.6                png_0.1-7                
## [127] polyclip_1.10-0           polynom_1.4-0            
## [129] praise_1.0.0              prettyunits_1.1.1        
## [131] processx_3.4.4            progress_1.2.2           
## [133] promises_1.1.1            ps_1.3.4                 
## [135] purrr_0.3.4               qap_0.1-1                
## [137] qpdf_1.1                  quantreg_5.67            
## [139] R.methodsS3_1.8.1         R.oo_1.24.0              
## [141] R.utils_2.10.1            R6_2.4.1                 
## [143] randomForest_4.6-14       raster_3.3-13            
## [145] RColorBrewer_1.1-2        Rcpp_1.0.5               
## [147] RcppArmadillo_0.9.900.3.0 RcppEigen_0.3.3.7.0      
## [149] readr_1.3.1               readxl_1.3.1             
## [151] registry_0.5-1            rematch_1.0.1            
## [153] remotes_2.2.0             reshape_0.8.8            
## [155] reshape2_1.4.4            rgeos_0.5-5              
## [157] rgl_0.100.54              RgoogleMaps_1.4.5.3      
## [159] rio_0.5.16                rlang_0.4.7              
## [161] rmarkdown_2.3             rprojroot_1.3-2          
## [163] rstatix_0.6.0             rstudioapi_0.11          
## [165] scales_1.1.1              scatterplot3d_0.3-41     
## [167] seriation_1.2-8           sf_0.9-5                 
## [169] sgeostat_1.0-27           shiny_1.5.0              
## [171] showtext_0.9              showtextdb_3.0           
## [173] signal_0.7-6              sm_2.2-5.6               
## [175] sna_2.5                   sourcetools_0.1.7        
## [177] sp_1.4-2                  SparseM_1.78             
## [179] spatstat_1.64-1           spatstat.data_1.4-3      
## [181] spatstat.utils_1.17-0     splancs_2.01-40          
## [183] statmod_1.4.34            statnet.common_4.3.0     
## [185] stringi_1.5.3             stringr_1.4.0            
## [187] survminer_0.4.8           survMisc_0.5.5           
## [189] svglite_1.2.3.2           sys_3.4                  
## [191] sysfonts_0.8.1            systemfonts_0.3.1        
## [193] TeachingDemos_2.12        tensor_1.5               
## [195] testthat_2.3.2            tibble_3.0.3             
## [197] tidyr_1.1.2               tidyselect_1.1.0         
## [199] tikzDevice_0.12.3.1       tinytex_0.25             
## [201] transformr_0.1.3          tripack_1.3-9.1          
## [203] TSP_1.1-10                tuneR_1.3.3              
## [205] tweenr_1.0.1              units_0.6-7              
## [207] utf8_1.1.4                vcd_1.4-7                
## [209] vctrs_0.3.4               vioplot_0.3.5            
## [211] viridis_0.5.1             viridisLite_0.3.0        
## [213] webshot_0.5.2             withr_2.2.0              
## [215] xfun_0.17                 xtable_1.8-4             
## [217] yaml_2.2.1                zip_2.1.1                
## [219] zoo_1.8-8                 boot_1.3-25              
## [221] class_7.3-17              cluster_2.1.0            
## [223] codetools_0.2-16          foreign_0.8-80           
## [225] KernSmooth_2.23-17        lattice_0.20-41          
## [227] MASS_7.3-51.6             Matrix_1.2-18            
## [229] mgcv_1.8-31               nlme_3.1-148             
## [231] nnet_7.3-14               rpart_4.1-15             
## [233] spatial_7.3-12            survival_3.1-12

致谢

本书写作过程中收到了不少读者反馈,在此一并致谢。感谢魏太云、Dazhi Jiang 和郑冰对本书文字的校对和建议;感谢赵彦云老师对本书书名和写作风格的建议;感谢李皞对写 lattice 系统和 rgl 包的提议;感谢李丰的彩蛋建议;感谢王晓伟、李承文、FreemanZY、agri521、annidy、Zhanwu Dai 耗费眼神帮我挑选了本书第一例彩蛋(图 3.5);感谢殷腾飞增加动态图形系统 GGobi 的建议;感谢方莹提供第 6 章的一些数据指引;本书部分小节的初稿内容来自一些朋友:王晓伟提供了 lattice 一节的初稿,邱怡轩提供 grid 和 rgl 两节的初稿,魏太云提供了《统计词话》的初稿,肖楠提供了 RgoogleMaps 一节的初稿。

最后,我要感谢我的父母和亲人们在 2008 年以来每个长假给我提供绝佳的写作环境,让我心无旁骛地写书;感谢吴喜之老师将 R 这套工具引入中国人民大学统计学院的课堂,以及王星老师在统计计算和非参数统计课堂上对 R 的介绍,没有他们的努力,我也许不会踏进 R 的大门;感谢我的硕士导师赵彦云老师在我的本硕学习期间给我的各种指导;感谢“统计之都”网站的会员们在 COS 论坛 上 S-Plus & R 版块和我的交流,他们的问题也使我意识到了图形知识的需求;感谢周筠老师和卢鸫翔编辑以及出版团队;感谢本书写作期间所有给我提供过帮助的人们。

参考文献

Xie, Yihui. 2015. Dynamic Documents with R and Knitr. 2nd ed. Boca Raton, Florida: Chapman; Hall/CRC. http://yihui.org/knitr/.

Xie, Yihui. 2016. Bookdown: Authoring Books and Technical Documents with R Markdown. Boca Raton, Florida: Chapman; Hall/CRC. https://github.com/rstudio/bookdown.

Xie, Yihui, J. J. Allaire, and Garrett Grolemund. 2018. R Markdown: The Definitive Guide. Boca Raton, Florida: Chapman; Hall/CRC. https://bookdown.org/yihui/rmarkdown.