将百分比行绑定到数据框
bind a percentage row to data frame
我正在使用一些总结大型数据集(600000 行)的代码 - 创建 repex 非常困难......我对以下代码的输出很满意 -
Summary <- dcast(NamedTestsLong %>%
group_by(YrFin, Lab) %>%
summarise(count = n(), .groups = "drop"),
YrFin ~ Lab, value.var = "count")
这正是我想要的..
但现在我想在底部的新行中添加 % 变化(2019/20 是分子,2018/19 是分母)...我过去做过这个,当时变化 % 是添加为 mutate
的新列,但无法弄清楚如何追加一行...我尝试了各种方法,例如 ...
Summary <- dcast(NamedTestsLong %>%
group_by(YrFin, Lab) %>%
summarise(count = n(), .groups = "drop"),
YrFin ~ Lab, value.var = "count") %>%
rbind(as.character(summarise_all(., funs(if(is.numeric(.)) round(diff(.)*100 -100, 2 else "Variance"))))
以及各种子集想法,例如...
Summary <- dcast(NamedTestsLong %>%
group_by(YrFin, Lab) %>%
summarise(count = n(), .groups = "drop"),
YrFin ~ Lab, value.var = "count") %>%
rbind(as.character(summarise_all(., funs(if(is.numeric(.)) round([2,]/[1,]*100 -100, 2 else "Variance"))))
但我现在迷路了...我认为 lappy 可能是正确的方向,但事实并非如此
我很了解的东西:-(
你可以试试:
result <- rbind(Summary, cbind(YrFin = 'Perc', Summary[2, -1]/Summary[1, -1]))
我正在使用一些总结大型数据集(600000 行)的代码 - 创建 repex 非常困难......我对以下代码的输出很满意 -
Summary <- dcast(NamedTestsLong %>%
group_by(YrFin, Lab) %>%
summarise(count = n(), .groups = "drop"),
YrFin ~ Lab, value.var = "count")
这正是我想要的..
但现在我想在底部的新行中添加 % 变化(2019/20 是分子,2018/19 是分母)...我过去做过这个,当时变化 % 是添加为 mutate
的新列,但无法弄清楚如何追加一行...我尝试了各种方法,例如 ...
Summary <- dcast(NamedTestsLong %>%
group_by(YrFin, Lab) %>%
summarise(count = n(), .groups = "drop"),
YrFin ~ Lab, value.var = "count") %>%
rbind(as.character(summarise_all(., funs(if(is.numeric(.)) round(diff(.)*100 -100, 2 else "Variance"))))
以及各种子集想法,例如...
Summary <- dcast(NamedTestsLong %>%
group_by(YrFin, Lab) %>%
summarise(count = n(), .groups = "drop"),
YrFin ~ Lab, value.var = "count") %>%
rbind(as.character(summarise_all(., funs(if(is.numeric(.)) round([2,]/[1,]*100 -100, 2 else "Variance"))))
但我现在迷路了...我认为 lappy 可能是正确的方向,但事实并非如此 我很了解的东西:-(
你可以试试:
result <- rbind(Summary, cbind(YrFin = 'Perc', Summary[2, -1]/Summary[1, -1]))