我有一个带有固定宽度格式的4行的头文件(使用MASS包中的write.matrix函数保存)。
现在我想用上面创建的头文件创建一个新的Matrix。在R中是否可以将固定的多行标题(例如“text”)添加到矩阵?
一个例子:我有一个像
这样的标题AB
CDEF 123456
GHIJK 789 101112
LMNOP
然后我想在第一列创建一个带日期的矩阵,然后在第二列创建数据(来自另一个文件),如
892201 0.1
892202 0.8
等等。注意:必须是描述的格式,因为程序只读取上面解释的固定宽度格式。
答案 0 :(得分:2)
您可以使用带有write.table()
参数的append = TRUE
函数将第二组数据写入现有文件。
如果我的文件foo.txt
包含您显示的标题,那么我可以通过首先创建我想要追加的数据对象来为该文件添加一些日期和其他数据:
dat <- data.frame(dates = Sys.Date() + 0:4, data = seq(0.1, 0.5, by = 0.1))
> dat
dates data
1 2012-06-12 0.1
2 2012-06-13 0.2
3 2012-06-14 0.3
4 2012-06-15 0.4
5 2012-06-16 0.5
以下内容将dat
附加到现有头文件中,而没有任何无关的标题或行名称
write.table(dat, "foo.txt", append = TRUE, col.names = FALSE, row.names = FALSE)
foo.txt
现在看起来像这样:
$ cat foo.txt
AB
CDEF 123456
GHIJK 789 101112
LMNOP
2012-06-12 0.1
2012-06-13 0.2
2012-06-14 0.3
2012-06-15 0.4
2012-06-16 0.5