为每个变量创建列表并生成描述

create list and generate descriptives for each variable

我想一次为多个变量(接近 50 个)生成描述性统计信息,而不是多次编写代码。

这是一个非常基本的数据示例:

id   var1   var2
1     1      3
2     2      3
3     1      4
4     2      4 

我通常会写出每一行代码以获得频率计数和描述,如下所示:

library(psych)

table(df$var1)
table(df1$var2)
describe(df1$var1)
describe(df1$var2)

我想创建一个列表并从这些分析中获取输出,而不是写出 100 行代码。我试过这个,但它不起作用:

variable_list<-list(df1$var, df2$var)

for (variable in variable_list){
table(df$variable_list))
describe(df$variable_list))}

有没有人有关于让它工作的建议?

来自psychdescribe可以取一个data.frame和returns每列的描述性统计

library(psych)
describe(df1)
#     vars n mean   sd median trimmed  mad min max range skew kurtosis   se
#id      1 4  2.5 1.29    2.5     2.5 1.48   1   4     3    0    -2.08 0.65
#var1    2 4  1.5 0.58    1.5     1.5 0.74   1   2     1    0    -2.44 0.29
#var2    3 4  3.5 0.58    3.5     3.5 0.74   3   4     1    0    -2.44 0.29

如果它是列的子集,请将列索引或列名称指定为 select 并子集数据集

describe(df1[2:3])

另一个选项是 descr 来自 collapse

library(collapse)
descr(slt(df1, 2:3))

或 select 数字列

descr(num_vars(df1))

factors

descr(fact_vars(df1))