我试图从R中的data.frame获取gz输出 我使用了以下脚本:
write.table(res,file = gzfile(newfile,open="wb"),quote = FALSE,sep="\t",row.names = FALSE,col.names = FALSE)
但输出不完整。 但是,如果我不使用gzfile(),输出就可以了。例如:
write.table(res,file =newfile,quote = FALSE,sep="\t",row.names = FALSE,col.names = FALSE)
输出不大,gz格式只有9 MB。我在互联网上找不到原因。我想知道为什么会这样。 谢谢!
答案 0 :(得分:0)
您正在创建连接并打开它,但您永远不会关闭它。在关闭之前它不会完整。
有两种解决方案:
不要打开连接,让write.table(res,file = gzfile(newfile),quote = FALSE,sep="\t",row.names = FALSE,col.names = FALSE)
打开它:
con <- gzfile(newfile, "wb")
write.table(res,file = con,quote = FALSE,sep="\t",row.names = FALSE,col.names = FALSE)
close(con)
或者,将其保存在变量中,然后明确地将其关闭:
loop