如何打开数据文件并在gWidgets2中使用变量?

时间:2016-08-28 09:05:05

标签: r gwidgets

我正在学习gWidgets2以制作GUI。 我想打开RD数据文件并计算变量的统计信息。

运行简单代码后,数据文件无法识别(只识别文件名的字符)。因此,我无法计算我想要的变量的平均值。怎么了?

这是代码的一部分。

surveillance.gui <-function(){ 

widgets<-list()
win <-gwindow("Public Health Surveillance")

pg<-gpanedgroup(horizontal=TRUE, cont=win,expand=TRUE)
mg<-ggroup(horizontal=FALSE, cont=pg)
tmp<-gframe("File",container=mg,expand=TRUE)

lyout<-glayout(container=tmp)
lyout[1,1]<-gbutton ("Data File...",cont=lyout, handler=function(h,...){
std<-gfile(text="Select Data File...",type="open",
        filter=list("Data files"=list(patterns=c("*.R","*.RData")),
                    "All files"=list(patterns=c("*")))
       )
if(std !="")
  { if(length(grep("\\",std,fixed=TRUE))>0){
       mystr<-strsplit(std,split="\\",fixed=T)[[1]]
           mystr.lth<-mystr[length(mystr)] 
           mydir<-substr(std,1,stop=(nchar(std)-nchar(mystr.lth)-1))
         setwd(mydir)     

 } else if(length(grep("/",std,fixed=TRUE))>0){
   mystr<-strsplit(std,split="/",fixed=T)[[1]] 

   mystr.lth<-mystr[length(mystr)] 
   setwd(mydir)
  } 
   samP <<-std
   svalue(widgets$file)<-samP #location of data directory
  }
  })
  st<-strsplit(svalue(widgets$file),split="\\",fixed=T)[[1]]
  fn <-st[length(st)] 


  dfile<-data(fn)


 lyout[1,2]<-(widgets$file<-gedit(text="",cont=lyout))
 lyout[2,1]<-gbutton("Monitoring year",cont=lyout)
 lyout[2,2]<-(widgets$year<-gedit       (text="",cont=lyout,coerce.with=as.numeric))
 lyout[3,1]<-gbutton("Data Type", cont=lyout)
 lyout[3,2]<-(widgets$type<-gcombobox(c("Daily","Weekly"),cont=lyout))
 lyout[4,1]<-gbutton("Mean",cont=lyout, handler=function(h,...){
                                     mean(dfile@observed) })
 lyout[4,2]<-(widgets$mean <-gedit(text="",cont=lyout))

0 个答案:

没有答案