我正在构建我的第一个Shiny应用程序 - 您可以在此访问实时版本:http://justmytwospence.shinyapps.io/StepLively/
它工作正常,但您可以在加载页面后立即看到我的问题.所有的输出都依赖于一个需要一段时间才能执行的反应导体(它实际上执行逐步回归的功能).因此,我的输出显示错误消息,直到无功导线完成执行.这只需要几秒钟,但它非常烦人和未经抛光.
有没有办法安排无功端点的执行,以便在无功导线完成之前它们不会执行?或者 - 但不太有利 - 有一种方法可以测试无功导体的可用性,并在无法使用时显示其他东西.有点像if (reactive_conductor_function()) {blah}.然而,这不起作用,因为它的功能.
编辑:我添加了一个"执行"按钮以完全绕过此问题,因此目前在应用程序中不明显.
在最近的家庭作业中,我们被指示运行27个线性模型,每次添加一个额外的变量(目标是绘制R 2中的变化与调整后的R 2中的变化).我发现很难通过算法创建这样的公式.我最终使用的代码如下所示(请注意,数据框中的第一列是因变量,其余的都是预期的独立变量.
make.formula <- function(howfar) {
formula <- c()
for (i in 1:howfar) {
if (i == 1) {
formula <- paste(formula, names(d)[i], '~')}
else if (i == howfar) {
formula <- paste(formula, names(d)[i], '')
}
else {
formula <- paste(formula, names(d)[i], '+')}
}
return(formula)
}
formulas <- lapply(seq(2, length(d)), make.formula)
formulas <- lapply(formulas, as.formula)
fits <- lapply(formulas, lm, data = d)
Run Code Online (Sandbox Code Playgroud)
这有效,但似乎远非理想,我的印象是,我在R中使用for循环做的任何事情可能都不是最好的方式.是否有更简单的方法来为给定的数据帧算法构造公式?
arima.sim()的工作方式类似于模拟静止时间序列的魅力,但我找不到任何模拟非平稳时间序列的内置函数或包,否则由任意arima系数参数化.这样的事情是否已经存在,或者这是我必须手动编码的那些事情之一?