&引用;错误:`x`必须是公式";具有qwraps2汇总表功能

&引用;错误:`x`必须是公式";具有qwraps2汇总表功能,r,summary,qwraps2,R,Summary,Qwraps2,我正在尝试制作一个表,其中包含与此类似的汇总统计数据(但填写了最小值/最大值/中值/平均值): 或者像这样:(也有一个宽度列) 以下是我的数据示例: dat <- data.frame( "id" = c(01,02,03,04,05,06,07,08,09,10), "type" = c("tct", "tcx", "tht", "thx", "tct"), "mass.g" = c(0.03,0.01,0.04,0.06,0.07,0.03,0.03,0.01,0.04,0

我正在尝试制作一个表,其中包含与此类似的汇总统计数据(但填写了最小值/最大值/中值/平均值):

或者像这样:(也有一个宽度列)

以下是我的数据示例:

dat <- data.frame(
  "id" = c(01,02,03,04,05,06,07,08,09,10),
  "type" = c("tct", "tcx", "tht", "thx", "tct"),
  "mass.g" = c(0.03,0.01,0.04,0.06,0.07,0.03,0.03,0.01,0.04,0.02),
  "size.length" = c(8,6,5,6.5,5,5.5,6,7,4,3),
  "size.width" = c(2,4,3,4,5,6,3,4,2,1),
)


dat在构建数据集时的一个小的修正。我使用dput()获取
对象的结构。这比使用
data.frame
因为每个列的模式都是显式定义的

dat | | tct(N=4)| tcx(N=2)| tht(N=2)| thx(N=2)|
#> |:----------------------|:------------------|:------------------|:------------------|:------------------|
#>|**质量(g)**| | | ||
#>| Min | 0.02 | 0.01 | 0.01 | 0.04|
#>| Max | 0.07 | 0.03 | 0.04 | 0.06|
#>|中位数| 0.03 | 0.02 | 0.025 | 0.05|
#>|平均值(SD)| 0.04±;0.02 | 0.02±;0.01 | 0.03±;0.02 | 0.05±;0.01 |
#>|**长度(毫米)**| | | ||
#>|分| 3 | 6 | 5 | 4|
#>| Max | 5.25 | 6 | 6 | 5.25|
#>|中位数| 8 | 6 | 7 | 6.5|
#>|平均值(SD)| 5.38±;2.06 | 6.00±;0.00 | 6.00±;1.41 | 5.25和plusmn;1.77 |
#>|**宽度(毫米)**|||||
#>| Min | 1 | 3 | 3 | 2|
#>| Max | 3.5 | 3.5 | 3.5 | 3|
#>|中位数| 6 | 4 | 4 | 4|
#>|平均值(SD)| 3.50和plusmn;2.38 | 3.50和plusmn;0.71 | 3.50和plusmn;0.71 | 3.00±;1.41 |
由(v0.3.0)于2020年9月15日创建

devtools::session_info()
#> ─ 会话信息───────────────────────────────────────────────────────────────
#>设定值
#>R版4.0.2版(2020-06-22)
#>macOS Catalina 10.15.6
#>系统x86_64,达尔文17.0
#>ui X11
#>语言(英文)
#>核对en_US.UTF-8
#>ctype en_US.UTF-8
#>美国/丹佛
#>日期2020-09-15
#> 
#> ─ 包装───────────────────────────────────────────────────────────────────
#>包*版本日期库源
#>资产负债表0.2.1 2019-03-21[1]起重机(R 4.0.0)
#>后端口1.1.9 2020-08-24[1]起重机(R 4.0.2)
#>callr 3.4.4 2020-09-07[1]起重机(R 4.0.2)
#>cli 2.0.2 2020-02-28[1]起重机(R 4.0.0)
#>蜡笔1.3.4 2017-09-16[1]克兰(R4.0.0)
#>描述1.2.0 2018-05-01[1]起重机(R 4.0.0)
#>开发工具2.3.1 2020-07-21[1]起重机(R 4.0.2)
#>文摘0.6.25 2020-02-23[1]CRAN(R 4.0.0)
#>省略号0.3.1 2020-05-15[1]CRAN(R 4.0.0)
#>评估0.14 2019-05-28[1]起重机(R 4.0.0)
#>fansi 0.4.1 2020-01-08[1]起重机(R 4.0.0)
#>fs 1.5.0 2020-07-31[1]起重机(R4.0.2)
#>胶水1.4.2 2020-08-27[1]起重机(R 4.0.2)
#>高0.8 2019-03-20[1]克朗(R4.0.0)
#>htmltools 0.5.0 2020-06-16[1]起重机(R4.0.0)
#>克尼特1.29 2020-06-23[1]克兰(R 4.0.0)
#>magrittr 1.5 2014-11-22[1]CRAN(R 4.0.0)
#>备忘录1.1.0 2017-04-21[1]克兰(R 4.0.0)
#>pkgbuild 1.1.0 2020-07-13[1]起重机(R 4.0.2)
#>pkgload 1.1.0 2020-05-29[1]起重机(R4.0.0)
#>prettyunits 1.1.1 2020-01-24[1]起重机(R4.0.0)
#>processx 3.4.4 2020-09-03[1]起重机(R 4.0.2)
#>ps 1.3.4 2020-08-11[1]起重机(R 4.0.2)
#>qwraps2*0.5.0 2020-09-14[1]本地
#>R6 2.4.1 2019-11-12[1]起重机(R4.0.0)
#>Rcpp 1.0.5 2020-07-06[1]起重机(R4.0.0)
#>遥控器2.2.0 2020-07-21[1]起重机(R4.0.2)
#>rlang 0.4.7 2020-07-09[1]起重机(R 4.0.2)
#>rmarkdown 2.3 2020-06-18[1]起重机(R4.0.0)
#>rprojroot 1.3-2 2018-01-03[1]CRAN(R 4.0.0)
#>sessioninfo 1.1.1 2018-11-05[1]CRAN(R 4.0.0)
#>stringi 1.5.3 2020-09-09[1]起重机(R 4.0.2)
#>纵梁1.4.0 2019-02-10[1]起重机(R4.0.0)
#>测试2.3.2 2020-03-02[1]起重机(R 4.0.0)
#>使用本1.6.1 2020-04-29[1]起重机(R 4.0.0)
#>带R 2.2.0 2020-04-20[1]起重机(R 4.0.0)
#>xfun 0.17 2020-09-09[1]起重机(R 4.0.2)
#>yaml 2.2.1 2020-02-01[1]起重机(R4.0.0)
#> 
#>[1]/Library/Frameworks/R.framework/Versions/4.0/Resources/Library

注意到的一些小事情:(1)在
dat
dataframe声明中,在行的末尾用
size.width添加逗号;(2) 
中间值(.data$mass.g)
后的
行中缺少逗号;(3) 
摘要
指的是
数据
而不是
数据
;经过纠正,我相信本的前两条评论是正确的。(3) 这是不对的。摘要结构应该使用
.data
代词,这样范围就正确了。
        Mass (g)                         Length (mm)      
Type    Min   Max   Median   Mean (SD)   Min   Max   Median   Mean (SD)
tct
tcx
tht
thx
tct

dat <- data.frame(
  "id" = c(01,02,03,04,05,06,07,08,09,10),
  "type" = c("tct", "tcx", "tht", "thx", "tct"),
  "mass.g" = c(0.03,0.01,0.04,0.06,0.07,0.03,0.03,0.01,0.04,0.02),
  "size.length" = c(8,6,5,6.5,5,5.5,6,7,4,3),
  "size.width" = c(2,4,3,4,5,6,3,4,2,1),
)

library(qwraps2)

summary <-
  list("Mass (g)" =
         list(
              "Min" = ~ min(.data$mass.g),
              "Max" = ~ max(.data$mass.g),
              "Median" = ~ median(.data$mass.g)
              "Mean (SD)" = ~ qwraps2::mean_sd(.data$mass.g)),
       "Length (mm)" =
         list(
              "Min" = ~ min(.data$size.length),
              "Max" = ~ median(.data$size.length),
              "Median" = ~ max(.data$size.length),
              "Mean (SD)" = ~ qwraps2::mean_sd(.data$size.length)),
       "Width (mm)" =
         list(
              "Min" = ~ min(.data$size.width),
              "Max" = ~ median(.data$size.width),
              "Median" = ~ max(.data$size.width),
              "Mean (SD)" = ~ qwraps2::mean_sd(.data$size.width)
              ))
summary
by_type <- summary_table(dplyr::group_by(dat, type), summary)
by_type