RCurl postform需要很长时间才能使用大型数据集

时间:2014-09-16 15:09:04

标签: r rcurl

require(RCurl)
RAW.API <- postForm(REDcap.URL, token=Redcap.token, content="record", 
       type="flat", format="csv", rawOrLabel="Label", 
       .opts=curlOptions(ssl.verifypeer=TRUE, cainfo=REDCap.crt, 
       verbose=FALSE))

data <-   read.table(file = textConnection(RAW.API), header = TRUE, 
          sep = ",", na.strings = "", stringsAsFactors = FALSE)

我正在使用这样的代码将数据从Redcap提取到R中。问题是当处理我的案例的大型数据集&gt; 19,000条记录时,它会花费大量时间甚至中止。有没有办法增强上面的代码,或者可能是日期数据的子集。

1 个答案:

答案 0 :(得分:2)

考虑让其中一个现有的R包处理一些低级代码。 REDCapRredcapAPI都将数据作为data.frame返回。它们由两个独立的团队开发,但我们为彼此的包裹做出贡献并经常进行沟通。

关于你的具体情况,我怀疑这些包的“批处理”会对你有所帮助。在封面下,两个包都检索数据的子集,然后在返回统一的data.frame之前将它们附加在一起。目前批处理不会使整体操作更快,但它实质上有助于避免超时

对于一般建议,REDCapR在CRAN上有一些小插图,redcapAPI有wiki

还有其他什么需要添加,@Benjamin