list - 将具有可变列数的文本文件读取到列表

标签 list file r

我有一个这样的文件:

mylist.txt
234984  10354  41175 932711 426928
1693237   13462

此文件的每一行都有不同数量的元素,每行最少 1 个元素。
我想把它读成这样的列表:
> print(head(mylist,2))
[[1]]
[1] 234984  10354  41175 932711 426928

[[2]]
[1] 1693237   13462

最佳答案

假设空格是分隔符:

fc <- file("mylist.txt")
mylist <- strsplit(readLines(fc), " ")
close(fc)

编辑:

如果值由多个空格分隔(一个/或以不一致的方式),您可以将分隔符与正则表达式匹配:
mylist.txt
234984   10354   41175 932711      426928
1693237               13462

fc <- file("mylist.txt")
mylist <- strsplit(readLines(fc), " +")
close(fc)

编辑 #2

strsplit返回字符串,您需要将数据转换为数字(这很简单):
mylist <- lapply(mylist, as.numeric)

关于list - 将具有可变列数的文本文件读取到列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4843128/

相关文章:

java - 使用 Ext JS 6 下载文件

r - ggplot2 在 R 中注释图层位置

r - 根据部分列名称和数学表达式过滤数据框中的行

python - 格式化列表的所有元素

python - 如何打印列表中的元素(非重复)

list - 如何获得列表大小 em VB .NET?

bash - 从 12GB 文件中删除特定行

python - 如何为列表的每个元素分配不同的变量

Android 在具有世界可读权限的内部存储中创建文件

r - 使用条件对字符列进行排序/排列