首页 文章

R,knitr,pander - 如何很好地格式化日期摘要()

提问于
浏览
5

我正在使用 summary()knitr 文档中生成日期变量的简单摘要,并希望将结果格式化得很好 .

summary(some_date)

产生我想要的结果(值显示为日期),但格式不是很好 . 所以,我尝试过:

pander::pander(summary(some_date))

这会生成格式良好的结果,但值显示为整数而不是日期 . (对于Date,POSIXct和POSIXlt日期,这是正确的) .

有没有办法在 knitr 文档中很好地格式化 summary() 日期的结果?也许除了 pander 之外还有一些软件包可以更好地完成这项任务 .

以下示例:

summary(some_date)
##         Min.      1st Qu.       Median         Mean      3rd Qu. 
## "2014-05-01" "2015-02-15" "2015-06-17" "2015-05-05" "2015-09-08" 
##         Max. 
## "2015-11-21"

pander::pander(summary(some_date))
Min.    1st Qu. Median  Mean    3rd Qu. Max.
16191   16481   16603   16560   16686   16760

sessionInfo()
## R version 3.2.3 (2015-12-10)
## Platform: x86_64-pc-linux-gnu (64-bit)
## Running under: Ubuntu 14.04.3 LTS
## 
## locale:
##  [1] LC_CTYPE=en_AU.UTF-8       LC_NUMERIC=C              
##  [3] LC_TIME=en_AU.UTF-8        LC_COLLATE=en_AU.UTF-8    
##  [5] LC_MONETARY=en_AU.UTF-8    LC_MESSAGES=en_AU.UTF-8   
##  [7] LC_PAPER=en_AU.UTF-8       LC_NAME=C                 
##  [9] LC_ADDRESS=C               LC_TELEPHONE=C            
## [11] LC_MEASUREMENT=en_AU.UTF-8 LC_IDENTIFICATION=C       
## 
## attached base packages:
## [1] stats     graphics  grDevices utils     datasets  methods   base     
## 
## other attached packages:
## [1] pander_0.6.0  ggplot2_2.0.0 daff_0.1.4    magrittr_1.5  dplyr_0.4.3  
## [6] readr_0.2.2  
## 
## loaded via a namespace (and not attached):
##  [1] Rcpp_0.12.2      knitr_1.11       munsell_0.4.2    lattice_0.20-33 
##  [5] colorspace_1.2-6 R6_2.1.1         plyr_1.8.3       stringr_1.0.0   
##  [9] tools_3.2.3      parallel_3.2.3   grid_3.2.3       packrat_0.4.6-4 
## [13] nlme_3.1-122     gtable_0.1.2     mgcv_1.8-7       DBI_0.3.1       
## [17] htmltools_0.2.6  lazyeval_0.1.10  yaml_2.1.13      assertthat_0.1  
## [21] digest_0.6.8     Matrix_1.2-3     formatR_1.2.1    curl_0.9.4      
## [25] evaluate_0.8     rmarkdown_0.9    labeling_0.3     V8_0.9          
## [29] stringi_1.0-1    scales_0.3.0     jsonlite_0.9.19

1 回答

  • 5

    感谢错误报告,development version of pander现在应该正确呈现:

    > pander::pander(summary(as.Date('2015-01-01') + 1:100))
    
    -----------------------------------------------------------------
       Min.     1st Qu.     Median      Mean     3rd Qu.      Max.   
    ---------- ---------- ---------- ---------- ---------- ----------
    2015-01-02 2015-01-26 2015-02-20 2015-02-20 2015-03-17 2015-04-11
    -----------------------------------------------------------------
    

相关问题