我有一个向量的R摘要:
summary(vector)
Min. 1st Qu. Median Mean 3rd Qu. Max.
1.000 1.000 2.000 6.699 6.000 559.000
我想添加一个标准差的列:
SomethingNew(vector)
Min. 1st Qu. Median Mean 3rd Qu. Max. Std.Dev.
1.000 1.000 2.000 6.699 6.000 559.000 17.02
最后一栏的公式是
round(sd(vector),2)
但我不清楚如何将它添加到同一显示中的摘要数据框中。任何帮助赞赏,欢呼。
答案 0 :(得分:6)
这是一种方法:
vec <- 1:10 # an example vector
summ <- summary(vec) # create the summary
summ["Std.Dev."] <- round(sd(vec),2) # add the new value
结果:
Min. 1st Qu. Median Mean 3rd Qu. Max. Std.Dev.
1.00 3.25 5.50 5.50 7.75 10.00 3.03
答案 1 :(得分:4)
尝试编写新功能。我已经简要介绍了如何编写可以用作资源的简单函数(link)。
基本上,您需要以下内容:
mySummary <- function(vector, na.rm = FALSE, round = 2){
results <- c(summary(vector), 'Std. Dev' = round(sd(vector, na.rm), 2))
return(results)
}
答案 2 :(得分:2)
试试这个
> set.seed(1)
> vector <- rnorm(100, 20, 5)
> c(summary(vector), sd=sd(vector))
Min. 1st Qu. Median Mean 3rd Qu. Max. sd
8.927000 17.530000 20.570000 20.540000 23.460000 32.010000 4.490997
舍入:
> round(c(summary(vector), sd=sd(vector)), 2)
Min. 1st Qu. Median Mean 3rd Qu. Max. sd
8.93 17.53 20.57 20.54 23.46 32.01 4.49