我试图在 R 中运行一组频率表,而不必为每个变量编写代码。例如,在 SPSS 中使用 mtcars 数据我会这样:
FREQUENCIES mpg TO vs
它会给我 mpg 和 vs 之间的变量的 8 个频率表。我试图在 R 中使用summarytools
functionfreq
或sjPlot
function来获得这种效果view_df
。我可以使用freq
,但您必须列出所有变量的名称,而不是使用TO
. 我可以这样做,view_df
但你必须知道变量的列位置(我有数千个变量,所以这不起作用)。请看看我在下面得到了什么。
#####USING FREQ IN SUMMARY TOOLS
library(summarytools)
freq(mtcars[ ,c("mpg", "cyl", "disp", "hp", "drat", "wt", "qsec", "vs")]) #works fine, but I don't want to have to list the names of all of the variables
#####USING VIEW_DF IN SJPLOT
library(sjPlot)
view_df(mtcars[, c(1:8)], #I want to be able to say c(mpg:vs)
show.na = TRUE,
show.type = TRUE,
show.frq = TRUE,
show.prc = TRUE,
show.string.values = TRUE,
show.id = TRUE)
####A FEW EXTRA STEPS USING THE EXPSS PACKAGE
我知道你可以使用 包装%to%
中的。expss
我这里有我自己的数据和变量名,对不起!
# table with counts
counts = calculate(olbm_na_A, cro(mdset(S06_01_NA %to% S06_99_NA), list("Count")))
# table with percents
percents = calculate(olbm_na_A, cro_cpct(mdset(S06_01_NA %to% S06_99_NA), list("Column, %")))
# combine tables
expss_output_viewer()
(counts %merge% percents)
我希望它打印出一系列频率表。我希望能够使用一些基本上意味着 var1 到 var10 的命令。我不知道如何执行此TO
命令。我希望它因您使用的软件包而异。