从 R 中的 CSV 文件中读取数据帧列表

标签 r csv split

我有一个 CSV 文件,其中包含许多具有相同列的数据框,例如:

x y z
1 2 3
3 2 1
x y z
1 3 2
2 3 1
2 1 3

我想做的是将此数据加载到数据帧列表中。例如,像这样:

$`1`
x y z
1 2 3
3 2 1

$`2`
x y z
1 3 2
2 3 1
2 1 3

在 R 中有什么快速的方法可以做到这一点吗?

最佳答案

我们可以使用 readLines 读取文件,创建一个“索引”,拆分带有该“索引”的行,然后使用 read.table 读取它read.csv

lines <- readLines(yourfile)
index <- cumsum(lines==lines[1])
lapply(split(lines,index), function(x) read.table(text=x, header=TRUE))
#$`1`
#  x y z
#1 1 2 3
#2 3 2 1

#$`2`
#  x y z
#1 1 3 2
#2 2 3 1
#3 2 1 3

关于从 R 中的 CSV 文件中读取数据帧列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29488890/

相关文章:

r - 在ggplot2中使用组,线型和颜色时使用单个图例?

r - 在 R 中构建日期时间列

python - 使用 python 透视 CSV 字符串,而不使用 pandas 或任何类似的库

javascript - 来自 CSV 的 d3 可缩放 TreeMap

r - 拆分后应用新列

python - 选择文本文件中的特定行和单元格并放入数据框 : python or R

python - 如何在 R 中将交互式绘图保存为本地文件?

java - java中的 float 比较以识别模式

mysql - 将分割字符串与 mysql 表连接

android - 在 2 行 Gridview 之间添加 View