使用通用的 Summary() 函数来获取一些数据。现在我想将一些汇总数据显示到表格中,然后编织成 pdf。如何根据调用 Summary() 函数的结果创建表格?
使用 TeX、kableExtra 和 ggplot2。
summary(segmentdata)
summary(subset(segmentdata, Segment == "Suburb mix"))
summary(subset(segmentdata, Segment == "Urban hip"))
summary(subset(segmentdata, Segment == "Travelers"))
summary(subset(segmentdata, Segment == "Moving up"))
例如数据
年龄性别收入孩子自己的家
最小。 :20.00 长度:300 分钟:-13292 分钟:0.000 长度:300
1st Qu.:32.75 Class :character 1st Qu.: 38122 1st Qu.:0.000 Class :character
中位数:39.00 模式:字符 中位数:51134 中位数:1.000 模式:字符
平均值:40.59 平均值:50259 平均值:1.163
第三区:47.00 第三区:63001 第三区:2.000
最大限度。 :70.00 最大:139679 最大:5.000
订阅段
长度:300 长度:300
类:字符类:字符
模式:字符 模式:字符
答案 0 :(得分:1)
欢迎使用 StackOverflow。在发布问题以提供具有可重现示例的实际数据时,这是一个很好的做法,以便贡献者可以为您提供帮助。 reprex
包推荐与 R
一起使用。
我会根据我认为您想要实现的目标给您一个答案。我以 iris
数据集为例。
library(tidyverse)
library(kableExtra)
vars <- iris %>% names()
iris %>%
filter(Species == "setosa") %>% # subset data
map_dfr(summary) %>% # apply summary to variables
add_column(vars = vars, .before = 1) # add variable names
#> # A tibble: 5 x 10
#> vars Min. `1st Qu.` Median Mean `3rd Qu.` Max. setosa versicolor virginica
#> <chr> <tab> <table> <tabl> <tab> <table> <tab> <int> <int> <int>
#> 1 Sepa.. 4.3 4.8 5.0 5.006 5.200 5.8 NA NA NA
#> 2 Sepa.. 2.3 3.2 3.4 3.428 3.675 4.4 NA NA NA
#> 3 Peta.. 1.0 1.4 1.5 1.462 1.575 1.9 NA NA NA
#> 4 Peta.. 0.1 0.2 0.2 0.246 0.300 0.6 NA NA NA
#> 5 Spec.. NA NA NA NA NA NA 50 0 0
有关该过程的更多详细信息,请查看该函数的文档。
对于 kableExtra
输出,在管道末尾添加 kbl() %>% kable_styling()
。