【问题标题】:file.exist for online available files in Rfile.exist 用于 R 中的在线可用文件
【发布时间】:2023-03-09 16:50:01
【问题描述】:

我想测试一下 gitub 上是否存在一个文件,file.exists() 不工作:

t= "https://raw.githubusercontent.com/jcolomb/HCS_data_1/master/Project_exampledata1/Routputs/Min_permutated_1.csv"
file.exists(t)
#FALSE
read.csv2(t) #that does work

我也试过了:

 data = try(read.csv2(paste0(onlinemin,'/Min_',Name_project,'.csv'),dec = ".")
 ,T)

但即使 try() 不成功,exists("data") 也为真。

有什么想法吗?

【问题讨论】:

    标签: r


    【解决方案1】:
    require(RCurl)
    url_handle<-getCurlHandle()
    t= "https://raw.githubusercontent.com/jcolomb/HCS_data_1/master/Project_exampledata1/Routputs/Min_permutated_1.csv"
    getURL(t,header=1,nobody=1, curl = url_handle)
    getCurlInfo(url_handle,"response.code")
    

    404 表示不好。 200 意味着好走。您也许可以将其全部合并为一行。编码愉快。

    【讨论】:

      【解决方案2】:

      我认为来自RCurl 库的url.exists(t) 可以满足您的需求。

      希望对你有帮助!

      【讨论】:

        【解决方案3】:

        由于不想用别的包,最后还是用了

        data = try(read.csv2(paste0(onlinemin,'/Min_',Name_project,'.csv'),dec = ".")
        ,T)
        if (class(data)=="try-error") ...
        

        不是很优雅,但很有效。

        【讨论】:

          猜你喜欢
          • 2019-02-18
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-01-07
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多