R回合添加额外零的问题

问题描述 投票:0回答:1

我正在制作29个非常相似但具有不同状态数据的闪亮应用程序。我已经成功地复制和粘贴了代码,并且只是更改了数据。我正在显示无家可归和住宿的学生的学习成绩,我想将百分比四舍五入到最接近的十分之一。我遇到了一个问题,其中R在某些百分比的末尾添加了一个额外的0,但仅适用于无家可归的人群,并且只包含少数几个变量。它并不会每次都发生,甚至在它所发生的几个变量中(所有变量的格式都相同,如果这很重要)在每个应用程序中并不总是相同的。我不知道是R问题还是闪亮问题,有时它们会正确显示在R中,直到我运行该应用程序时才弄乱,但有时无论运行该应用程序都会发生这种情况。这是某种错误吗?有什么解决方法吗?到目前为止,我找到的最好的解决方案是手动输入这些标签,但这有点麻烦。这是我要四舍五入的代码。

CAWtabkypct$Homeless <- percent(round(CAWtabkypct$Homeless, 3)) 
CAWtabkypct$Housed <- percent(round(CAWtabkypct$Housed, 3))

这是我得到的输出,以及应用程序中的图形。

outputgraphs

我什至不知道如何开始分享一个可复制的示例,所以请让我知道是否有人知道正在发生的事情,或者是否有我可以提供的更多信息。

编辑:这是一个非常小的可复制示例:

CAWtabkyhml <- c(0.3756009, 0.2974416, 0.3269574)
CAWtabkyhsd <- c(0.1410886, 0.2504221, 0.6084893)

CAWtabkypcthml <- percent(round(CAWtabkyhml, 3))
CAWtabkypcthsd <- percent(round(CAWtabkyhsd, 3))
r shiny rounding
1个回答
0
投票

percent()函数执行自己的舍入。您应该只使用该功能,而不要为round()

打扰
CAWtabkypcthml <- scales::percent(CAWtabkyhml, accuracy=.1)
CAWtabkypcthsd <- scales::percent(CAWtabkyhsd, accuracy=.1)
CAWtabkypcthml
# [1] "37.6%" "29.7%" "32.7%"
CAWtabkypcthsd
# [1] "14.1%" "25.0%" "60.8%"
© www.soinside.com 2019 - 2024. All rights reserved.