gpt4 book ai didi

R Shiny 数据表 : Format numbers not by column but by row

转载 作者:行者123 更新时间:2023-12-02 04:15:40 28 4
gpt4 key购买 nike

我的数据是这样的矩阵:

             Buy and Hold              Strategy
[1,] 1.0000000000000000 19.0000000000000000
[2,] -0.6300786023496699 -0.2361973739022651
[3,] -0.0872213557701079 -0.0244237977843418
[4,] -0.3461103323781194 -0.1010012410191289
[5,] 0.0000000000000000 0.4949083503054990
[6,] 0.2520044841505053 0.2418168087629348
[7,] -0.7946470924762163 -0.7731378277502762
[8,] 1864.0000000000000000 1707.0000000000000000

如您所见,我需要按行而不是按列进行格式设置。例如 [1,] 应该没有小数,因此有 1 和 19。但是,行 [2,]-Row[7,] 应该是像 xx.x% 这样的百分比,而行[8,] 又是一个数字没有小数。我怎样才能做到这一点?我不知道如何使用这些回调函数,我认为有解决方案..

最佳答案

您可以使用rowCallback函数:

library(DT)

data <- matrix(c(0,0.64,-0.76234,0.43,1,19),nrow=3,byrow=T)

datatable(data,options=list(
rowCallback=JS("function( row, data, index ) {
$('td:eq(0)', row).html(data[0] % 1 != 0 | data[0]==0 ? (data[0]*100).toFixed(1) +'%':data[0]);
$('td:eq(1)', row).html(data[1] % 1 != 0 | data[1]==0 ? (data[1]*100).toFixed(1) +'%':data[1]);
}
")))

此示例会将数字乘以 100,四舍五入到小数点后 1 位,如果数字有小数部分或为 0,则添加百分号。如果没有,则保持数字不变。

它仅在数据表的第一列和第二列上执行此操作。

关于R Shiny 数据表 : Format numbers not by column but by row,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33916578/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com