文件(file, ifelse(append, "a" , "w" )) 中的错误:参数'description'无效



我正在尝试创建一个函数,该函数接受至少100个变量的数据帧并对其进行切片,这样我就可以得到多个始终包含前5个变量和其余10个变量的dfs,然后写入生成的切片我想要自动化的示例

First_slice <- df1[,c(1:5, 6:15)]
Second_slice <- df1[,c(1:5, 16:25)]

我的功能

Auto.Slice <- function(df, base= 'slice'){
x <- seq(6, 194, 10) #vector with the starts of my slices
#print(x)
#View(df)
One.Slice <- function(df1, x=NULL, base){
#View(df1)
y <- if (x+9 <= ncol(df1)) x+9 else ncol(df1)
#print(y)
df2 <- df1[,c(1:5, x:y)]
#View(df2)
#print(base)
file_name <- paste(base, x,'_', y, '.csv', sep ='')
#print(file_name)
write.table(df2, file_name, row.names = F, sep='t', col.names = T)
}
One.Slice(df, x, base)
}
Auto.Slice(df = MS)

为了识别错误,我添加了几个"打印"语句,发现问题出在我想将每个切片写入.csv.时

我还没有找到解决这个问题的答案。有趣的是,当我写出书面陈述时,它就起作用了。

错误消息

文件中的错误(file,ifelse(append,"a","w"((:无效的"description"参数

Okey,没关系,我意识到变量"file_name"是一个字符向量,它包含了我的切片的所有名称。为了解决这个问题,我使用了for循环。

Auto.Slice <- function(df, base= 'slice'){
x <- seq(6, 194, 10) #vector with the starts of my slices
One.Slice<-function(df1, x=NULL, base){
y <- if (x+9 <= ncol(df1)) x+9 else ncol(df1)
df2 <- df1[,c(1:5, x:y)]
file_name <- paste(base, x,'_', y, '.csv', sep ='')

for (i in file_name){
write.table(df2, i, row.names = F, sep='t', col.names = T)
}
}
One.Slice(df, x, base)
}
Auto.Slice(df = MS)

相关内容

最新更新