我使用RStudio,R Markdown,Latex和Pandoc来清理数据,构造变量,运行我的分析并报告结果。我对可重复研究的概念很陌生,但我很迷惑。具有很大的意义。可重复研究的自动化文本
动态表格和数字是没有问题的。但是,动态文本正在困扰着我。我可以插入内联代码,说95%的统计数据都是错误的,但我不确定如何以可重现的方式改变我的语言。
例如,如果我有一个对象x = 0.66,并且我想写“3个牙医中的2个使用Crest”?我可以查看x的当前值0.66,并在文本中键入“2的3”,但这是不可重现的。假设我获得新数据并重新运行分析,x变为0.52。我的文本会过时。当然,我可以动态地报告52%的牙医更喜欢佳洁士,但是当一切都以百分比形式报告时,报告会变得过时。
我的想法是,我可以创建函数,我可以在文本中调用,当我想改变写作。举例来说,一个“out.of”功能可以工作。如果else语句生成文本:
ifelse(x < 0.09,"fewer than 1 out of 10",
ifelse(x >= 0.09) & x < 0.11,"roughly 1 out of 10",
ifelse(x >= 0.11 & x < 0.15,"slightly more than 1 out of 10",
ifelse(x >= 0.15 & x < 0.19,"nearly 2 out of 5",
ifelse(x >= 0.19 & x < 0.21,"roughly 2 out of 5",
...
ifelse(x >= 0.95 & x < 0.99,"nearly all",
ifelse(x >= 0.99,"all","fubar"))...)
我还可以创建一小部分功能,会做的十分之一,五分之二的类似的东西,一个 - 第三...
我相信别人已经解决了这个问题。任何线索?想法?
这是一个非常有趣的问题,但我认为这将取决于您的可读性限制。比如,你认为“20分之1”还是“25分之1”是有效的选择?你想为更一般的休息时间设置什么样的门槛(比如“五分之二”)?一旦解决了这个问题,我会建议尝试'cut()'并指定标签而不是'ifelse()'。我不认为任何软件包会为你做这件事,但他们应该帮助你达到目标! – A5C1D2H2I1M1N2O1R2T1
谈到代表百分比时,我认为“十分之一”是我想要去的最低点。今年我学到了大量的R(从零的基线),但没有减少()。将研究它。谢谢。 –
那么你将不得不弄清楚什么“超出”类别是最有用的。诸如“9,8,7,6”之类的类别可能不会很方便用户,因为这会对一些精神上试图将这些数字转换回百分比的读者征税。祝你好运! – A5C1D2H2I1M1N2O1R2T1