将摘要行添加到dplyr输出
我在这里找到了一些解决方案,但似乎没有一个能够将摘要行添加到dplyr输出将摘要行添加到dplyr输出,r,dplyr,R,Dplyr,我在这里找到了一些解决方案,但似乎没有一个能够将摘要行添加到dplyr输出 #mock up data df <- data.frame("Market" = sample(c("East", "North", "West"), 100, replace = TRUE, prob = c(0.33, 0.33, 0.34)), "var1" = sample(c("Y", "N"), 100, replace = TRUE, prob = c(0.4, 0.6
#mock up data
df <- data.frame("Market" = sample(c("East", "North", "West"), 100, replace = TRUE, prob = c(0.33, 0.33, 0.34)),
"var1" = sample(c("Y", "N"), 100, replace = TRUE, prob = c(0.4, 0.6)),
"var2" = sample(c("Y", "N"), 100, replace = TRUE, prob = c(0.7, 0.3)),
"var3" = sample(c("Y", "N"), 100, replace = TRUE, prob = c(0.5, 0.5)))
选择2
两者都给出了相同的错误:和(n)中的错误:参数的“类型”(闭包)无效
我无法确定为什么这些解决方案虽然对其他人有效而且看起来非常合理,但对我无效。你应该试试
df_report %>% janitor::adorn_totals("row")
产生
Market n var1_y var1_n total var1_y_pct var1_n_pct pct_total
East 30 11 19 30 0.3666667 0.6333333 0.4285714
West 40 19 21 40 0.4750000 0.5250000 0.5714286
Total 70 30 40 70 0.8416667 1.1583333 1.0000000
要做到这一点,还有很长的路要走。summary
(注意,var1\n\u pct
)中有一个打字错误。然后将行绑定
row_to_add <- df_report %>%
summarise(Market = "Total",
n = sum(n),
var1_y = sum(var1_y),
var1_n = sum(var1_n),
total = sum(total),
var1_y_pct = sum(var1_y_pct),
var1_n_pct = sum(var1_n_pct),
pct_total = sum(pct_total))
df_report %>% bind_rows(row_to_add)
行到行添加%
总结(Market=“总计”,
n=总和(n),
var1_y=总和(var1_y),
var1_n=总和(var1_n),
总计=总计,
var1_y_pct=总和(var1_y_pct),
var1_n_pct=总和(var1_n_pct),
pct_总计=总和(pct_总计))
df_报告%>%bind_行(行添加到行)
df_report %>%
rbind(c("Total", sum(n), sum(var1_y), sum(var1_n), sum(total), sum(var1_y_pct), sum(varn_y_pct), sum(pct_total)))
df_report %>% janitor::adorn_totals("row")
Market n var1_y var1_n total var1_y_pct var1_n_pct pct_total
East 30 11 19 30 0.3666667 0.6333333 0.4285714
West 40 19 21 40 0.4750000 0.5250000 0.5714286
Total 70 30 40 70 0.8416667 1.1583333 1.0000000
row_to_add <- df_report %>%
summarise(Market = "Total",
n = sum(n),
var1_y = sum(var1_y),
var1_n = sum(var1_n),
total = sum(total),
var1_y_pct = sum(var1_y_pct),
var1_n_pct = sum(var1_n_pct),
pct_total = sum(pct_total))
df_report %>% bind_rows(row_to_add)