计数低于 30% 百分位数的记录
Count records below the 30% percentile
我有一个table喜欢
mtcars
我需要计算有多少模型低于 30% 百分位数。我发现那个百分位数。但我没有找到如何计算它们。
library(dplyr)
library(purrr)
mtcars %>% summarise(across(where(is.numeric), ~ quantile(.x, 0.30 ) ))
mpg cyl disp hp drat wt qsec vs am gear carb
1 15.98 4 142.06 106.2 3.15 2.773 17.02 0 0 3 2
mtcars %>% 总结(跨越(其中(is.numeric),~分位数(.x,0.30)))
我们转换为逻辑向量 (.x < quantile(.x, 0.30)
) 并使用 sum
获取计数 - 作为 TRUE
-> 1 和 FALSE
-> 0
library(dplyr)
mtcars %>%
summarise(across(where(is.numeric), ~ sum(.x < quantile(.x, 0.30 ) )))
-输出
mpg cyl disp hp drat wt qsec vs am gear carb
1 10 0 10 10 9 10 9 0 0 0 7
在基础 R 中你可以这样做
num <- sapply(mtcars, is.numeric)
sapply(mtcars[num], \(x) sum(x < quantile(x, .3)))
# mpg cyl disp hp drat wt qsec vs am gear carb
# 10 0 10 10 9 10 9 0 0 0 7
或
colSums(mtcars[num] < lapply(mtcars[num], quantile, .3))
# mpg cyl disp hp drat wt qsec vs am gear carb
# 10 0 10 10 9 10 9 0 0 0 7
或(使用matrixStats::colQuantiles
)
colSums(mtcars[num] < as.list(matrixStats::colQuantiles(as.matrix(mtcars[num]), probs=.3)))
# mpg cyl disp hp drat wt qsec vs am gear carb
# 10 0 10 10 9 10 9 0 0 0 7
我有一个table喜欢
mtcars
我需要计算有多少模型低于 30% 百分位数。我发现那个百分位数。但我没有找到如何计算它们。
library(dplyr)
library(purrr)
mtcars %>% summarise(across(where(is.numeric), ~ quantile(.x, 0.30 ) ))
mpg cyl disp hp drat wt qsec vs am gear carb 1 15.98 4 142.06 106.2 3.15 2.773 17.02 0 0 3 2
mtcars %>% 总结(跨越(其中(is.numeric),~分位数(.x,0.30)))
我们转换为逻辑向量 (.x < quantile(.x, 0.30)
) 并使用 sum
获取计数 - 作为 TRUE
-> 1 和 FALSE
-> 0
library(dplyr)
mtcars %>%
summarise(across(where(is.numeric), ~ sum(.x < quantile(.x, 0.30 ) )))
-输出
mpg cyl disp hp drat wt qsec vs am gear carb
1 10 0 10 10 9 10 9 0 0 0 7
在基础 R 中你可以这样做
num <- sapply(mtcars, is.numeric)
sapply(mtcars[num], \(x) sum(x < quantile(x, .3)))
# mpg cyl disp hp drat wt qsec vs am gear carb
# 10 0 10 10 9 10 9 0 0 0 7
或
colSums(mtcars[num] < lapply(mtcars[num], quantile, .3))
# mpg cyl disp hp drat wt qsec vs am gear carb
# 10 0 10 10 9 10 9 0 0 0 7
或(使用matrixStats::colQuantiles
)
colSums(mtcars[num] < as.list(matrixStats::colQuantiles(as.matrix(mtcars[num]), probs=.3)))
# mpg cyl disp hp drat wt qsec vs am gear carb
# 10 0 10 10 9 10 9 0 0 0 7