我需要读取具有不同压缩格式的多个压缩文件。我不希望手动解压缩所有文件。我希望R能够独立于压缩格式处理解压缩和读取。这就是我被困住的地方。
我可以构建一个带有switch-case结构的函数,用于zip-unzip,gz-gzfile等等,但我想知道是否已经有一些函数可以解压缩文件而不管压缩格式如何。
任何建议都表示赞赏。非常感谢!
PS:
我知道read.table
可以读取(有些,如果不是全部)压缩文件。但是,我一直在向data.table::fread
迈进(因为它更快),而且似乎无法读取压缩文件(http://r.789695.n4.nabble.com/fread-on-gzipped-files-td4663116.html - 但是?)。我宁愿暂时解压缩并使用fread而不是使用read.table。
答案 0 :(得分:1)
然后这是一个upvote: - )
顺便说一下,我认为没有一个通用的“uncompress”函数能为你带来魔力(就像在任何一种shell语言中一样)。选项可能过于宽泛 - 但我怀疑你用zip / tar / rar覆盖了80%的案例。
只需写一个简单的uncompress <- function(type = c("zip", "tgz", "tar", "arj :-)))")) {...}
,这是你的初衷。