R 修改摘要输出
我想修改summary函数(base r)返回的摘要输出: 这显示了标准汇总统计:R 修改摘要输出,r,R,我想修改summary函数(base r)返回的摘要输出: 这显示了标准汇总统计: am gear carb Min. :0.0000 Min. :3.000 Min. :1.000 1st Qu.:0.0000 1st Qu.:3.000 1st Qu.:2.000 Median :0.0000 Median :4.000 Median :2.000 Mean :0.4
am gear carb
Min. :0.0000 Min. :3.000 Min. :1.000
1st Qu.:0.0000 1st Qu.:3.000 1st Qu.:2.000
Median :0.0000 Median :4.000 Median :2.000
Mean :0.4062 Mean :3.688 Mean :2.812
3rd Qu.:1.0000 3rd Qu.:4.000 3rd Qu.:4.000
Max. :1.0000 Max. :5.000 Max. :8.000
我可以通过删除中位数并添加count和stdev来修改此输出吗?谢谢。使用
sapply
做一个DIY总结
sapply(mtcars[c("am", "gear", "carb")], function(x)
c(min=min(x), quantile(x, c(.25, .75)), max=max(x), count=length(x), sd=sd(x)))
# am gear carb
# min 0.0000000 3.0000000 1.0000
# 25% 0.0000000 3.0000000 2.0000
# 75% 1.0000000 4.0000000 4.0000
# max 1.0000000 5.0000000 8.0000
# count 32.0000000 32.0000000 32.0000
# sd 0.4989909 0.7378041 1.6152
或者,您可以使用lappy
通过round
ing等自定义列
do.call(rbind, lapply(mtcars[c("am", "gear", "carb")], function(x)
data.frame(min=min(x), q1=quantile(x, .25), q3=quantile(x, .75), max=max(x),
count=length(x), sd=round(sd(x), 3))))
# min q1 q3 max count sd
# am 0 0 1 1 32 0.499
# gear 3 3 4 5 32 0.738
# carb 1 2 4 8 32 1.615
如何单独控制计数的小数?@user7256821,因为结果是一个矩阵,只有通过将
四舍五入(…,4)
整体包装才能全局实现。我可以问一下您需要计数作为整数的目的是什么吗?我正在ggplot2输出上使用此摘要统计数据,它将使用gridExtra包以可视表格的形式显示摘要。@user7256821 Trydo.call(rbind,lappy(mtcars[c(“am”,“gear”,“carb”)],function(x)data.frame(min=min(x),q1=quantile(x,.25),q3=quantile(x,.75),max=max(x),count=length(x),sd=sd(x))
,这将使您以整数计算。@用户7256821只需自定义最后一条注释的代码,例如sd=round(sd(x),3)
do.call(rbind, lapply(mtcars[c("am", "gear", "carb")], function(x)
data.frame(min=min(x), q1=quantile(x, .25), q3=quantile(x, .75), max=max(x),
count=length(x), sd=round(sd(x), 3))))
# min q1 q3 max count sd
# am 0 0 1 1 32 0.499
# gear 3 3 4 5 32 0.738
# carb 1 2 4 8 32 1.615