即使我的Windows 7区域设置指定使用","作为小数分隔符,R和RStudio给我一个"." 分隔器.有没有办法改变这个?请注意下面语言环境中的"LC_NUMERIC = C"设置:这似乎是由R或RStudio强制执行的.
由于我正处于长期项目的中间,我不愿意立即改为R 3.0和最后一个RStudio版本.有谁知道这些版本中的小数分隔符问题是否有任何变化?
我使用prettyNum解决单个数字的问题,但我不知道如何在表上使用它.
sessionInfo()R版本2.15.3(2013-03-01)平台:x86_64-w64-mingw32/x64(64位)
locale:
[1] LC_COLLATE=Spanish_Argentina.1252 LC_CTYPE=Spanish_Argentina.1252
[3] LC_MONETARY=Spanish_Argentina.1252 LC_NUMERIC=C
[5] LC_TIME=Spanish_Argentina.1252
attached base packages:
[1] grid splines stats graphics grDevices utils datasets methods
[9] base
other attached packages:
[1] ascii_2.1 randomForest_4.6-7 pander_0.3.3 fpc_2.1-5
[5] flexmix_2.3-10 mclust_4.0 cluster_1.14.3 MASS_7.3-23
[9] Gmisc_0.5.0.0 testthat_0.7 boot_1.3-7 rms_3.6-3
[13] miscTools_0.6-16 stringr_0.6.2 Hmisc_3.10-1 survival_2.37-2
[17] lattice_0.20-13 xtable_1.7-1 pixmap_0.4-11 RColorBrewer_1.0-5
[21] ade4_1.5-1
loaded via a namespace (and not attached):
[1] digest_0.6.3 evaluate_0.4.3 modeltools_0.2-19 stats4_2.15.3
[5] tools_2.15.3
Run Code Online (Sandbox Code Playgroud) 我可以使用以下命令更改输出中的小数字符:
> 1/2
[1] 0.5
> options(OutDec = ',')
> 1/2
[1] 0,5
Run Code Online (Sandbox Code Playgroud)
但是,这种变化并不影响sprintf()功能。
> sprintf('%.1f', 1/2)
[1] "0.5"
Run Code Online (Sandbox Code Playgroud)
所以,我的问题是:有一种简单的方法可以改变它(小数字符)吗?我认为我不能使用“简单”RE,因为并非所有.需要都通过 进行交易,。
我不知道该怎么做,所以我不能说我已经做了什么。