我的一个脚本有重复的代码段为:函数内识别变量名
cat(capture.output(describe(semWellCases$di)),
file="./output/descriptivestats.txt",
sep="\n",append=TRUE)
cat(capture.output(describe(semWellCases$dd)),
file="./output/descriptivestats.txt",
sep="\n",append=TRUE)
cat(capture.output(describe(semWellCases$fas)),
file="./output/descriptivestats.txt",
sep="\n",append=TRUE)
本节的目标是创造一个文件,并追加统计每个变量的文件。我试图使它成为一个功能部分工作:
descriptiveStats <- function (vars, filename) {
for (i in vars) {
cat(capture.output(describe(i)),
file=filename,
sep="\n",append=TRUE)
}
}
我与拨打:
descriptiveStats(semWellCases[c("di","dd", "fas")], "./output/stats.txt")
的问题是输出文件没有变量名,他们都被列为i
,这是我在用于循环的名称:
1 Variables 195 Observations
--------------------------------------------------------------------------------
i
n missing distinct Info Mean Gmd .05 .10
195 0 13 0.982 5.574 2.891 2.0 3.0
.25 .50 .75 .90 .95
4.0 5.0 7.0 9.0 9.3
Value 2 3 4 5 6 7 8 9 10 11 12
Frequency 15 32 37 23 24 20 18 16 5 2 1
Proportion 0.077 0.164 0.190 0.118 0.123 0.103 0.092 0.082 0.026 0.010 0.005
Value 14 28
Frequency 1 1
Proportion 0.005 0.005
--------------------------------------------------------------------------------
在一系列附加几个描述()输出后,变得不可能识别摘要到相应的变量。
- 如何在每个
describe()
输出之前打印传递给该函数的变量名称?
输出之前,他们是如何列为'i'?是'stats.txt'有问题,因为你不知道它来自哪里? –
请参阅描述输出()的第三行,那里有'i'。我希望它是变量的名称,无论是'dd','fas'还是'di' ... –