【问题标题】:Reading a gpx file into Shiny from a dropbox account从 Dropbox 帐户将 gpx 文件读入 Shiny
【发布时间】:2017-05-28 07:53:38
【问题描述】:

我有一个 Shiny 应用程序可以从 Dropbox 帐户访问数据。我使用https://github.com/karthik/rdrop2/blob/master/README.md 处的说明能够毫无问题地读取 csv 数据,即在执行身份验证步骤后使用 rdrop2 包中的drop_read_csv 命令。 例如

my_data<-drop_read_csv("ProjectFolder/DataSI.csv")  

然而,我的下一个问题是,将有很多 gpx 跟踪文件上传到我希望应用能够读取的保管箱。我尝试使用:

gpx.files<-drop_search('gpx', path="ProjectFolder/gpx_files")
trk.tmp<-vector("list",dim(gpx.files)[1])
for(i in 1: dim(gpx.files)[1]){
  trk.tmp[[i]]<-readOGR(gpx.files$path[i], layer="tracks") 
}

但没有运气。在readOGR 步骤,我得到:

Error in ogrInfo(dsn = dsn, layer = layer, encoding = encoding, use_iconv = use_iconv,  : 
  Cannot open data source 

希望有人可以提供帮助。

【问题讨论】:

    标签: r shiny dropbox gpx


    【解决方案1】:

    我的问题是我没有正确指定保管箱路径。我使用了drop_read_csv 代码并制作了drop_readOGR 版本:

    drop_readOGR<-function(my.file, dest=tempdir()){
      localfile = paste0(dest, "/", basename(my.file))
      drop_get(my.file, local_file = localfile, overwrite = TRUE)
      readOGR(localfile, layer="tracks")
    }
    

    所以现在我可以使用我之前所做的,只是我更改了循环中的行来调用新函数。

    gpx.files<-drop_search('gpx', path="ProjectFolder/gpx_files")
    trk.tmp<-vector("list",dim(gpx.files)[1])
    for(i in 1: dim(gpx.files)[1]){
      trk.tmp[[i]]<-drop_readOGR(gpx.files$path[i]) 
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-11-27
      • 1970-01-01
      • 2021-11-18
      • 1970-01-01
      • 1970-01-01
      • 2016-10-30
      • 2016-01-01
      相关资源
      最近更新 更多