商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > 利用R语言解压与压缩.tar.gz.zip等格式文件

利用R语言解压与压缩.tar.gz.zip等格式文件

  发布于2026-07-22 阅读(0)

扫一扫,手机访问

最近在处理文件时,发现R语言在批量解压与压缩方面相当顺手,这里把不同格式的常用操作方法整理出来,方便直接查阅。 由于解压和压缩本质上是对称的操作,所以下面以解压为例,按文件格式逐一说明。

.zip

压缩用 `zip()`,解压用 `unzip()`。 压缩时,第一个参数指定压缩后的文件名,第二个参数指定要压缩的文件名。 解压就更简单了,直接在 `unzip()` 里写上需要解压的文件名即可。

.tar.gz

压缩:`tar()`,解压:`untar()`。 用法和 `.zip` 完全一致,不再赘述。

.gz 与 .bz2

这两种格式比较特殊——它们既可以视为压缩文件,也可以直接当作数据文件来读取,因为本质上就是数据文件本身。下面从“解压”和“直接读取”两个角度来介绍。

1) 直接解压

R 默认没有解压这类文件的函数,需要借助 `R.utils` 包。调用 `gunzip()` 或 `bunzip2()` 即可解压,注意函数里有一个 `remove =` 参数:设为 `TRUE` 时,只保留解压后的文件,原压缩包会被自动删除(默认就是 `TRUE`)。 ```bash library(R.utils) gunzip("file.gz", remove = TRUE) bunzip2("file.bz2", remove = TRUE) ``` 解压之后,直接用 `read.table()` 就能读取。

2) 直接读取

如果目的只是读取数据而非保留解压后的文件,可以用两个默认函数组合的方式: ```bash dat <- read.table(gzfile("file.gz")) ``` 对于 R 2.10 及以上版本,还有更简洁的方式——直接 `read.table()` 就能读取压缩文件: ```bash dat <- read.table("file.gz") ```

参考

- Decompress gz file using R - untar: Extract Or List Tar Archives
本文转载于:https://www.jb51.net/article/227451.htm 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注