readr
包是 R 语言中专门用于读取和写入各种格式数据文件的工具包。本文将总结 readr
包的常见数据文件类型、获取/修改工作路径的方法,以及数据的读取与写入功能,最后还会介绍一些解析函数的用法。
1. 常见数据文件类型
readr
包支持多种常见的数据文件类型:
- CSV(Comma-Separated Values)文件:以逗号作为分隔符的文件。
- TSV(Tab-Separated Values)文件:以制表符作为分隔符的文件。
- TXT文件:文本文件,数据可以用逗号或其他字符作为分隔符。
- Excel 文件(xls 和 xlsx) :需要加载
readxl
包来读取 Excel 文件。 - RDS文件:R 数据文件,适用于保存 R 中的对象。
2. 获取/修改工作路径
在 R 中,工作路径(working directory)是当前 R 会话操作文件的默认位置。我们可以使用以下函数获取或修改工作路径:
r
# 获取当前工作路径
getwd()
# 设置新的工作路径
setwd("/path/to/your/directory")
也可以通过 RStudio 界面来设置工作路径:
- Session -> Set Working Directory -> Choose Directory
- 修改全局设定:Tools -> Global Options -> Default working directory
3. 数据读取与写入
readr
包提供了多种函数来读取和写入不同类型的数据文件。下面是一些常用的函数:
读取CSV文件
r
library(readr)
# 读取 CSV 文件
data <- read_csv("data.csv")
# 常用参数
data <- read_csv("data.csv", show_col_types = TRUE, skip = 2, comment = "#", col_names = c("Column1", "Column2"), na = "NA", col_types = cols(
Column1 = col_double(),
Column2 = col_character()
))
写入CSV文件
r
# 写入 CSV 文件
write_csv(data, "output.csv")
其他读取函数
r
# 读取分隔符为 ";" 的 CSV 文件
data_csv2 <- read_csv2("data_csv2.csv")
# 读取 TSV 文件
data_tsv <- read_tsv("data.tsv")
# 读取自定义分隔符文件
data_delim <- read_delim("data.txt", delim = "|")
# 读取固定宽度文件
data_fwf <- read_fwf("data.fwf")
# 读取表格文件
data_table <- read_table("data.txt")
# 读取日志文件
data_log <- read_log("log.txt")
# 读取 RDS 文件
data_rds <- read_rds("data.rds")
读取 Excel 文件
需要加载 readxl
包:
r
library(readxl)
# 读取 Excel 文件
data_excel <- read_excel("data.xlsx")
写入 RDS 文件
r
# 写入 RDS 文件
write_rds(data, "output.rds")
4. 解析函数
解析函数用于将字符向量解析为其他类型的数据。readr
提供了一些常用的解析函数:
r
# 解析整数
parse_integer("123")
# 解析双精度数
parse_double("123.45")
# 解析数字,忽略非数字字符
parse_number("$123,456.78")