在运行肠道菌群循环时,早上跑的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]