目前的解决方案是
dp <- 2
sprintf(paste0("%.", dp, "f"), 0.123)
期望的解决方案没有 Paste0() 并且类似于
sprintf("%.{%2$d}f", 0.123, 2L)
除了它有效之外。
您可以使用*
插入dp
进入格式。
dp <- 2
sprintf("%.*f", dp, 0.123)
# [1] "0.12"
From ?sprintf
:
Details:
字段宽度或精度(但不能同时)可以用星号表示*
:在这种情况下,参数指定所需的数字。
也可以看看Examples:“使用星号表示宽度或精度”; “星号和参数重用,‘e’示例重申”
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)