我有一个这样的文件:
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/