繁体   English   中英

R / Shiny错误:二进制运算符的非数字参数

[英]R/Shiny error: non-numeric argument to binary operator

我正在学习Shiny,并且试图编写一个应用程序以图形方式探索Simpson的悖论。 我首先在R中构建了绘图,并以可自定义的选项作为起点。 该图显示了正相关但可以分解为负相关的组的数据。 开头的选项包括要具有的组数,它们的间距,是否显示已分组/未分组的回归线等。请参见此处的 simpson.R脚本。

该应用程序的目的是让用户使用这些选项,以使分组或多或少变得明显,并突出显示(或不显示)负相关。

我的应用程序文件的完整代码在github上 我没有足够的声誉来发布两个以上的链接,因此请在ui.R server.R找到ui.Rserver.R

我似乎无法解决的错误显然是此行中某处的non-numeric argument to binary operator

anchors_x <- rep(seq(2, 2 + (input$number_of_groups - 1) * input$separation, 
                             by = input$separation)

并且

p <- ggplot(data = dfserver(), aes(x, y))

具体问题:

R为什么不将这些变量视为数字?

更普遍:

首先用简单的R脚本构建图对我来说聪明吗? 还是更典型的工作流程仅仅是从一开始就用Shiny构建事物? 如果是这样,如果无法进入环境中四处探寻对象,如何在Shiny内调试/构建R? 还是有一种我不知道的方法来访问ui.Rserver.R内部的对象?

input$number_of_groups和friends是一个字符串。

尝试

    ng = as.integer(input$number_of_groups)
    sep = as.integer(input$separation)
    ppg = as.integer(input$points_per_group)
    anchors_x <- rep(seq(2, 2 + (ng - 1) * sep, by = sep), ppg)

和下面的类似

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM