【发布时间】:2014-02-14 00:48:23
【问题描述】:
我正在尝试从 data.frame 对象创建一个 .csv 或 .txt 文件,该对象还包含一些描述有关变量的更多详细信息的行。
这是我的第一次尝试:
Head <- "
#variables:
#sal - Salinity [PSU]
#temp - Temperature [degrees Celsius]
"
n <- 10
df <- data.frame(sal=runif(n, 30, 37), temp=runif(n, 15, 17))
df
sink("data.txt")
Head
df
sink()
结果如下:
[1] "\n#variables [units]:\n#sal - Salinity [PSU]\n#temp - Temperature [degrees Celcius]\n"
sal temp
1 32.11494 15.35176
2 30.57537 16.80972
3 32.90651 15.95174
4 30.62192 15.73436
5 31.43069 15.45873
6 34.38173 15.69713
7 31.27954 15.01126
8 32.77093 16.22493
9 35.99510 15.10123
10 35.52409 15.49084
但是,我真的希望它看起来像这样:
#variables [units]:
#sal - Salinity [PSU]
#temp - Temperature [degrees Celcius]
sal temp
1 32.11494 15.35176
2 30.57537 16.80972
3 32.90651 15.95174
4 30.62192 15.73436
5 31.43069 15.45873
6 34.38173 15.69713
7 31.27954 15.01126
8 32.77093 16.22493
9 35.99510 15.10123
10 35.52409 15.49084
【问题讨论】:
-
或者,如果你不想使用
sink(),fn <- "data.txt"; writeLines(Head, fn); write.table(df, fn, append=TRUE, quote=FALSE) -
@JoshO'Brien - 感谢您提供另一种出色的方法 - 也许考虑在下面创建另一个答案。如果您不介意,我在这里有一个后续问题:stackoverflow.com/q/21764361/1199289