r - 在 R 和正则表达式中添加前面的“+”号
问题描述
我有正数或负数。它们可以在小数点后有一位或两位数。我要求的格式是小数点后一位,除非有两位有效数字。负数需要一个减号。理想情况下是真正的减号 (UTF 2212),而不是连字符、短划线或短划线。正数需要加号。不会出现零。
所以
x <- c(-1, -1.1, -1.23, 0.1, 1, 1.23)
变成
x <- c(−1.0, −1.1, −1.23, +0.1, +1.0, +1.23)
早些时候,我问了一个没有 +/- 符号信息和 UTF 2212 详细信息的类似问题,并收到了来自 @Abdessabour Mtktop 的回答:
sub("(?<=\\.\\d)0$", "", format(x, digits = 3), perl = T)
这使:
"-1.0" "-1.1" "-1.23" " 0.1" " 1.0" " 1.23"
如何在正数前面出现的空格中获得“+”号?
解决方案
我不太确定您在寻找什么,但这是否有效?
formatC(x, flag = "+",format = "f", digits = 2)
[1] "-1.00" "-1.10" "-1.23" "+0.10" "+1.00" "+1.23"
获得与您一样的准确结果:
sub("0$",'',formatC(x, flag = "+",format = "f", digits = 2))
[1] "-1.0" "-1.1" "-1.23" "+0.1" "+1.0" "+1.23"
推荐阅读
- python - 如何使用 QFileDialog 打开带有 .mid 后缀的文件
- api - Linkedin API 应用程序调用限制
- python - 输入库中的示例代码导致 TypeError: 'type' object is not subscriptable, 为什么?
- sql-server - 对于 Chrome 和 IE 上的某些用户,日期选择器在 SSRS 报告中不可见
- python - 如何在播放器下渲染文本?
- php - Symfony5:登录限制失败必须是RequestRateLimiterInterface的实例,给定的RateLimiterFactory实例
- tinymce - 如何在 TinyMCE 中保存 CSS 样式?
- pine-script - 为累积图表添加总和的问题
- c# - 如何查找匿名对象的所有 DateTime 属性?
- android - 如何获取当前周/月的第一天和最后一天