我正在编写一个函数,该函数的输出是未知列数据框的摘要统计信息列表。例如,如果我的数据框有3列,则列表输出必须是这样的:
col1
col1mean
(mean of column 1)
col1
col1median
(median of column 1)
col2
col2$mean
(mean of column 2)
col2
col2$median
(median of column2)
col3
col3mean
(mean of column 3)
col3
col3median
(median of column 3)
我的问题是,我该如何返回我的列表,以便它在n个列的均值,中位数和标准差之间循环?
一种方法lapply
:
# example data
set.seed(123)
dat <- data.frame(col1 = rnorm(10), col2 = rnorm(10), col3 = rnorm(10))
lapply(dat, function(x) list(mean = mean(x), median = median(x), sd = sd(x)))
结果:
$col1
$col1$mean
[1] 0.07462564
$col1$median
[1] -0.07983455
$col1$sd
[1] 0.9537841
$col2
$col2$mean
[1] 0.208622
$col2$median
[1] 0.3802926
$col2$sd
[1] 1.038073
$col3
$col3$mean
[1] -0.4245589
$col3$median
[1] -0.6769652
$col3$sd
[1] 0.9308092
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句