【发布时间】:2012-11-02 14:43:40
【问题描述】:
当使用 write.zoo() 将 zoo 对象写入 CSV 文件时,我实际上希望将小数精度从默认的 14 降低到仅 3。但是,即使在 options() 中设置了 scipen 和数字,我无法降低输出的精度。
这里有一个示例代码来说明问题。
blah <- zoo(cbind(c(1.590833333333335, NA), c(NA, 21.590833333333337)))
index(blah) <- c("Dec 1985", "Dec 1986")
colnames(blah) <- c("FooHeader", "BarHeader")
options(scipen = 3, digits = 3)
write.zoo(blah, file = "blah.csv", sep = ",")
如果我打开 blah.csv 文件,我会看到
"Index","FooHeader","BarHeader"
"Dec 1985",1.59083333333334,NA
"Dec 1986",NA,21.5908333333333
但我真正想看到的是
"Index","FooHeader","BarHeader"
"Dec 1985",1.591,NA
"Dec 1986",NA,21.591
我该如何实现呢?提前致谢!
注意:我知道通过降低精度,如果我再次将数据读入 R,我仍然会失去精度。没关系。我可以忍受。
【问题讨论】: