2

我正在使用以下代码创建一个格式整齐的输出文件,其中包含整齐对齐的列:

library(gdata)
CompositeMatrix = cbind(array1,array2,array3)
    
write.fwf(CompositeMatrix,file="output.txt",sep="\t", quote=F,rownames=F,colnames=F)

但是,我遇到的问题是我无法将列标题添加到此文件中。如果我更改colnames为 T,它只会添加“V1”、“V2”、“V3”作为列标题。据说该函数的rowCol参数write.fwf()仅在 rownames=T 时有效,并且我不希望显示行号。而且,到目前为止,为 指定值rowCol还没有奏效。使用write.table()没有用,因为输出文件有交错列,这使得对输出的可视化分析变得困难。

任何有关如何修改上述代码以添加列标题的建议将不胜感激。谢谢!

更新:(a) Gregor 的建议有助于将列标题添加到我的输出文件中——谢谢!(b) 不,我的矩阵中没有列名。

4

1 回答 1

0

归功于@GregorThomas 和其他人:如果矩阵没有任何列名,我们需要在使用colnames()之前添加它们write.fwf()

library(gdata)
CompositeMatrix = cbind(array1, array2, array3)
colnames(CompositeMatrix) <- c("Col1Name", "Col2Name", "etc.")

write.fwf(CompositeMatrix, file="output.txt", sep="\t", quote=FALSE, rownames=FALSE, colnames=TRUE)
于 2021-01-23T11:17:55.590 回答