当使用 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,我仍然会失去精度。没关系。我可以忍受这一点。