跳至内容

Feather 为数据框提供二进制列式序列化。它旨在使读取和写入数据框更高效,并简化跨数据分析语言共享数据。read_feather() 可以读取 Feather 版本 1 (V1)(2016 年开始提供的旧版本)和版本 2 (V2)(即 Apache Arrow IPC 文件格式)。read_ipc_file()read_feather() 的别名。

用法

read_feather(file, col_select = NULL, as_data_frame = TRUE, mmap = TRUE)

read_ipc_file(file, col_select = NULL, as_data_frame = TRUE, mmap = TRUE)

参数

file

字符文件名或 URI、连接、raw 向量、Arrow 输入流或带有路径的 FileSystem (SubTreeFileSystem)。如果为文件名或 URI,则会在完成后打开和关闭 Arrow InputStream。如果提供了输入流,则会保持打开状态。

col_select

要保留的列名的字符向量,与 data.table::fread() 的“select”参数相同,或 整洁选择规范 的列,如 dplyr::select() 中使用的那样。

as_data_frame

函数是否应返回 tibble(默认值)或 Arrow Table

mmap

逻辑值:是否将文件内存映射(默认值为 TRUE

返回值

如果 as_data_frameTRUE(默认值),则为 tibble,否则为 Arrow Table

另请参阅

FeatherReaderRecordBatchReader,用于更低级别的访问以读取 Arrow IPC 数据。

示例

# We recommend the ".arrow" extension for Arrow IPC files (Feather V2).
tf <- tempfile(fileext = ".arrow")
on.exit(unlink(tf))
write_feather(mtcars, tf)
df <- read_feather(tf)
dim(df)
#> [1] 32 11
# Can select columns
df <- read_feather(tf, col_select = starts_with("d"))