读写数据帧
数据框是 R 的表格数据结构。它们可以以各种方式写入或读取。
这个例子说明了几种常见情况。请参阅末尾的链接以获取其他资源。
写作
在下面的示例数据之前,请确保你在要写入的文件夹中。运行 getwd()
以验证你所在的文件夹,如果需要更改文件夹,请阅读 ?setwd
。
set.seed(1)
for (i in 1:3)
write.table(
data.frame(id = 1:2, v = sample(letters, 2)),
file = sprintf("file201%s.csv", i)
)
现在,我们在磁盘上有三个类似格式的 CSV 文件。
读
我们有三个类似格式的文件(从上一节开始)要读入。由于这些文件是相关的,我们应该在读完后将它们存储在一起,在一个 list
中:
file_names = c("file2011.csv", "file2012.csv", "file2013.csv")
file_contents = lapply(setNames(file_names, file_names), read.table)
# $file2011.csv
# id v
# 1 1 g
# 2 2 j
#
# $file2012.csv
# id v
# 1 1 o
# 2 2 w
#
# $file2013.csv
# id v
# 1 1 f
# 2 2 w
要使用此文件列表,首先使用 str(file_contents)
检查结构,然后阅读有关使用 ?rbind
堆叠列表或使用 ?lapply
迭代列表的信息。
更多资源
查看 ?read.table
和 ?write.table
以扩展此示例。也:
- R 二进制格式(用于表和其他对象)
- 纯文本表格式
- 逗号分隔的 CSV
- 制表符分隔的 TSV
- 固定宽度格式
- 与语言无关的二进制表格式
- 羽毛
- 外表和电子表格格式
- SAS
- SPSS
- 塔塔
- 高强
- 关系数据库表格式
- MySQL 的
- SQLite 的
- PostgreSQL 的