我想知道如何describeBy()
从summary()
. 调用 后library(psych)
,当前函数报告最小值、最大值和中位数,但不报告第 25 和第 75 个四分位数的统计信息。
attach(mtcars)
describeBy(mpg, gear)
var n mean sd median trimmed mad min max range skew kurtosis se
提前感谢您的帮助。
我想知道如何describeBy()
从summary()
. 调用 后library(psych)
,当前函数报告最小值、最大值和中位数,但不报告第 25 和第 75 个四分位数的统计信息。
attach(mtcars)
describeBy(mpg, gear)
var n mean sd median trimmed mad min max range skew kurtosis se
提前感谢您的帮助。
不出所料,还有一个专门针对五个数字的内置基本函数:fivenum
aggregate(mpg ~ gear, data=mtcars, fivenum)
gear mpg.1 mpg.2 mpg.3 mpg.4 mpg.5
1 3 10.40 14.50 15.50 18.40 21.50
2 4 17.80 21.00 22.80 28.85 33.90
3 5 15.00 15.80 19.70 26.00 30.40
编辑
以回答评论中的后续 Q(正如我所解释的那样),您可以使用.
公式中的 来指定所有其他列
aggregate(.~gear, data=mtcars, fivenum)
#too wide to print here
或者,如果您只想要fivenum
没有齿轮拆分的所有列,那么就是:
apply(mtcars, 2,fivenum)
mpg cyl disp hp drat wt qsec vs am gear carb
[1,] 10.40 4 71.10 52 2.760 1.5130 14.500 0 0 3 1
[2,] 15.35 4 120.65 96 3.080 2.5425 16.885 0 0 3 2
[3,] 19.20 6 196.30 123 3.695 3.3250 17.710 0 0 4 2
[4,] 22.80 8 334.00 180 3.920 3.6500 18.900 1 1 4 4
[5,] 33.90 8 472.00 335 4.930 5.4240 22.900 1 1 5 8
更简单:您只需添加describeBy
参数quant=c(0.25,0.75))