R 中是否有连接 tapply 和 round 的函数?
Is there a function in R to connect tapply with round?
可能解决方案很简单,但我现在找不到。我喜欢在描述性统计分析中使用 tapply
。例如:
tapply(dataframe1$Means, dataframe2$gender, function(x) {
c(
"mean" = mean(x, na.rm = TRUE),
"sd" = sd(x, na.rm = TRUE),
"med" = median(x, na.rm = TRUE),
"min" = min(x, na.rm = TRUE),
"max" = max(x, na.rm = TRUE)
)
})
现在我想将结果直接四舍五入到两个地方,但不将它们写入另一个或新对象。
感谢提示
是您要找的吗?我在汇总函数组周围添加了 round(c(...), digits = 2)
(均值、sd、 等 ),因此该函数在 tapply
内进行舍入而不创建新对象。
编辑:没有重复 round()
功能的更好版本。
tapply(iris$Sepal.Length, iris$Species,
function(x){round(c("mean" = mean(x, na.rm = TRUE),
"sd" = sd(x, na.rm = TRUE),
"med" = median(x, na.rm = TRUE),
"min" = min(x, na.rm = TRUE),
"max"= max(x, na.rm = TRUE)), digits = 2)})
#> $setosa
#> mean sd med min max
#> 5.01 0.35 5.00 4.30 5.80
#>
#> $versicolor
#> mean sd med min max
#> 5.94 0.52 5.90 4.90 7.00
#>
#> $virginica
#> mean sd med min max
#> 6.59 0.64 6.50 4.90 7.90
由 reprex package (v2.0.1)
于 2022-05-10 创建
可能解决方案很简单,但我现在找不到。我喜欢在描述性统计分析中使用 tapply
。例如:
tapply(dataframe1$Means, dataframe2$gender, function(x) {
c(
"mean" = mean(x, na.rm = TRUE),
"sd" = sd(x, na.rm = TRUE),
"med" = median(x, na.rm = TRUE),
"min" = min(x, na.rm = TRUE),
"max" = max(x, na.rm = TRUE)
)
})
现在我想将结果直接四舍五入到两个地方,但不将它们写入另一个或新对象。
感谢提示
是您要找的吗?我在汇总函数组周围添加了 round(c(...), digits = 2)
(均值、sd、 等 ),因此该函数在 tapply
内进行舍入而不创建新对象。
编辑:没有重复 round()
功能的更好版本。
tapply(iris$Sepal.Length, iris$Species,
function(x){round(c("mean" = mean(x, na.rm = TRUE),
"sd" = sd(x, na.rm = TRUE),
"med" = median(x, na.rm = TRUE),
"min" = min(x, na.rm = TRUE),
"max"= max(x, na.rm = TRUE)), digits = 2)})
#> $setosa
#> mean sd med min max
#> 5.01 0.35 5.00 4.30 5.80
#>
#> $versicolor
#> mean sd med min max
#> 5.94 0.52 5.90 4.90 7.00
#>
#> $virginica
#> mean sd med min max
#> 6.59 0.64 6.50 4.90 7.90
由 reprex package (v2.0.1)
于 2022-05-10 创建