R语言肠道菌群循环代码错误

在运行肠道菌群循环时,早上跑的200多次循环代码都是成功的,但是晚上再跑的时候就无缘无故报错了,期间没有修改过代码,在运行至for时提示error,想请教一下大家报错的原因是啥

#* ---install or library-------------------------------------
if (!require("devtools")) { install.packages("devtools") } else {}
if (!require("data.table")) { install.packages("data.table") } else {}
if (!require("TwoSampleMR")) { devtools::install_github("MRCIEU/TwoSampleMR") } else {}
library(MRInstruments)
library(plyr)
library(dplyr)  
library(vroom)


FileNames<-list.files(paste0(getwd()),pattern=".txt")

#* ---Set working directory-------------------------------------
`%+%` <- function(x,y) paste0(x,y)
dir.create(getwd()%+%"/data")
path_data <- getwd()%+%"/data"
dir.create(getwd()%+%"/result")
path_res <- getwd()%+%"/result"

for(i in c(1:length(FileNames))){
  d1<- try(fread(paste0(getwd(),"/",FileNames[i]),sep = "\t"),silent = T)
  d2<-subset(d1,d1$P.weightedSumZ<1e-5)
  d3<-d2[,c(1,4,5,6,7,8,10,11)]
  write.table(d3,paste0(path_data,"/",FileNames[i]),sep=",", col.names = T, row.names = F, quote = F)}


 for(i in c(1:length(FileNames))){
+   d1<- try(fread(paste0(getwd(),"/",FileNames[i]),sep = "\t"),silent = T)
+   d2<-subset(d1,d1$P.weightedSumZ<1e-5)
+   d3<-d2[,c(1,4,5,6,7,8,10,11)]
+ write.table(d3,paste0(path_data,"/",FileNames[i]),sep=",", col.names = T, row.names = F, quote = F)}
Error in `[.data.table`(d2, , c(1, 4, 5, 6, 7, 8, 10, 11)) : 
  条目 2 j 是 4 不在列索引范围内 [1,ncol=1]
不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^

同学,我也有这样的问题,你解决了吗