我的问题非常基础(我是R的初学者)。我正在尝试收集从gradio小部件(R的gwidgets2包)中选择的值。
我使用的脚本与这个简化的脚本类似:
U=vector(mode="character")
DF=function() {
Win=gbasicdialog(handler=function(h,...) {
T=svalue(A)
print(T)
# I can print but not assign the value using : assign (U,T, .GlobalEnv)
})
A<-gradio(c("1","2","3"), selected=1,container=Win,)
out <- visible(Win)
}
DF()使用这个脚本,我可以打印在gradio小部件中选择的值,但是当我试图将这个值赋给传递给全局环境的另一个变量时,我得到了一个错误。
这很奇怪,因为这种脚本结构可以很好地从其他小部件(如gtable)中收集值。我做错了什么?
谢谢你的帮助。
发布于 2016-06-18 00:53:32
我不确定哪里出了问题,但我可以通过一个小的改变来运行你的代码:
DF <- function() {
Win <- gbasicdialog(
handler = function(h, ...) {
.GlobalEnv$varT = svalue(A)
print(varT)
}
)
A <- gradio(c("1", "2", "3"), selected = 1, container = Win)
out <- visible(Win)
}
DF()一个小建议:避免使用单个字母T或F,因为在您的代码T中,T可能被解释为TRUE而不是object T。
https://stackoverflow.com/questions/37867013
复制相似问题