在 R 中打开 .7z 文件

Opening a .7z file in R

谁能告诉我一种通过 R 解压缩和打开 .7z 文件的方法?

这是我要下载的文件示例:

 utils::download.file(
          url = "ftp://ftp.mtps.gov.br/pdet/microdados/RAIS/AC2008.7z")

我想要的所有文件在解压缩后都是 .txt。

如果我尝试 unzip("./AC2008.7z"),我会收到消息:

In unzip(fileName, exdir = mainDir, subDir) : error 1 in extracting from zip file

有什么帮助吗?

我不一定需要解压缩文件 - 如果 R 以某种方式直接打开底层 .txt,那就没问题了。

解决方案应该是可以在包中的函数中实现的。

The archive package 将打开 7zip 格式。

您需要安装 devtools 软件包才能安装它。

devtools::install_github("jimhester/archive")

我无法访问 FTP 服务器上的示例文件。假设它是 .txt 文件的多文件存档,您可以这样访问它:

a <- archive("AC2008.7z")

假设它包含一个名为 x.txt 的文件,其中的列由白色 space 分隔,您可以这样做:

library(readr)
x <- read_table(archive_read(a, "x.txt"))