从列表中提取向量时出现意外错误消息

Unexpected error message while extracting vectors from a list

我想从文本文件列表中提取向量。

首先定义正确的 "working directory" 然后我生成一个包含测试文件的列表。

file.list <- list.files(pattern="*.txt", full.names=T)

之后我以正确的方式格式化数据。

datalist = lapply(file.list, FUN=read.table, header = F, sep = "\t", skip = 2)

最后我定义了应该提取的向量。

cmbn = expand.grid(1:641, 1:977)
flen = length(datalist)
lapply(1:(nrow(cmbn)),function(t,lst,cmbn){
  return(sapply(1:flen,function(i,t1,lst1,cmbn1){
    return(lst1[[i]][cmbn1$Var1[t1],cmbn1$Var2[t1]])},t,lst,cmbn))}
  ,datalist,cmbn)

最后我得到了所有向量作为输出。但是我怎样才能巧妙地存储它们呢?我希望能够单独访问向量。

错误信息"incorrect number of dimensions"表示lst1[[i]]不具备二维。当dim returns NULL时,说明lst1[[i]]既不是矩阵也不是数组。

尝试使用 str(lst1[[i]]) 查看元素的 str 结构。是矢量吗?是别的东西吗?或者它只是缺少 (NULL)?

当您知道问题所在时,您可以修复它。它可能正在读取一个空文件,或者由于 ??

而您正在读取列表边界之外的索引