Я хотел бы получить приведенные ниже данные (под a) в формате с валютой, запятыми и отрицательными числами в скобках и выровненными по правому краю (под b и c). Также обратите внимание, что мне нужен символ валюты только для нескольких строк (с указанием стоимости в названиях / названиях строк)
(а) Токовый выход: -
Drug A vs P Drug A vs Q Drug A vs R Drug A vs S
Combined PP Difference 0.0903 0.0383 0.9933 0.0393
Medical Cost Difference (in $) -985.0988 -9999.5833 -5253.2836 -9603.5999
Total PP Cost Difference (in $) -5696.8688 -335.3333 5590.0962 9880.3909
YYL based on Med Cost ($/YYL) -93033.3368 -99065.8856 -59333.2590 -55263.3063
YYL based on Total Cost ($/YYL -535966.9930 -93933.5993 99238.5352 56583.9353
(b) Требуемый выход: -
Drug A vs P Drug A vs Q Drug A vs R Drug A vs S
Combined PP Difference 0.0903 0.0383 0.9933 0.0393
Medical Cost Difference (in $) (985.0988) (9999.5833) (5253.2836) -9603.5999
Total PP Cost Difference (in $) (5,696.8688) (335.3333) 5590.0962 9880.3909
YYL based on Med Cost ($/YYL) (93,033.3368) (99065.8856) (59333.2590) (55263.3063)
YYL based on Total Cost ($/YYL)(53,5966.9930) (93,933.5993) (99238.5352) 56583.9353
Более заслуженный / требуемый результат показан в (c). Тем не менее, «(б)» также несколько хорошо.
(c) Требуемый вывод: -
Drug A vs P Drug A vs Q Drug A vs R Drug A vs S
Combined PP Difference 0.0903 0.0383 0.9933 0.0393
Medical Cost Difference (in $) $(985.0988) $(9999.5833) $(5253.2836) -9603.5999
Total PP Difference (in $) $(5,696.8688) $(335.3333) $5590.0962 9880.3909
YYL based on Med Cost ($/YYL) $(93,033.3368)/YYL $(99065.8856)/YYL $(59333.2590)/YYL $(55263.3063)/YYL
YYL based on Total Cost ($/YYL) $(53,5966.9930)/YYL $(93,933.5993)/YYL $(99238.5352)/YYL $56583.9353/YYL
Обратите внимание, что мне не нужно "" (т. Е. Двойные / одиночные коды) перед знаком $, поскольку несколько кодов / функций, таких как доллар (x) и т. Д. В R, присваиваются "в начале и в конце число.
Я попробовал несколько кодов, но ни я не получаю -ve числа в скобках, и вместо этого, доллары идут с кодами "" и со всеми строками, кроме поставляемых с номерами строк 2 и 3 (в приведенных ниже кодах я избавляюсь от "" по крайней мере). Ниже приведены несколько кодов, которые я пробовал: -
Определение таблицы результатов - общая разница ПП, общая разница затрат и YYL на основе медицинских расходов и общей стоимости
results.table = matrix(NA, nrow=5, ncol=4)
row.names(results.table) <- c("Combined PP Difference", "Medical Cost Difference (in $)", "Total PP Difference (in $)",
"YYL based on Med Cost ($/YYL)", "YYL based on Total Cost ($/YYL")
colnames(results.table) <- c(" Drug A vs P", " Drug A vs Q", " Drug A vs R", " Drug A vs S")
results.table[1,] <- INC.YYL[5,]
results.table[2,] <- INC.med.cost[5,]
results.table[3,] <- total.cost.diff[3,]
results.table[4,] <- INC.med.cost[5,]/INC.QALY[5,]
results.table[5,] <- total.cost.diff[3,]/INC.QALY[5,]
Печать таблицы результатов
round(results.table, 4)
Кроме того, приведенный ниже нарушает выравнивание по правому краю и дает $ каждой строке (а я хочу, чтобы знак $ был только в строках 2 и 3).
library(formattable)
currency(results.table, symbol = "$", digits = 2)
Аналогичным образом, приведенный ниже код не служит требуемым: -
library(formattable)
rt1 <- currency(results.table[1,], "", 4)
rt2 <- currency(results.table[2,], "$", 0)
rt3 <- currency(results.table[3,], "$", 0)
rt4 <- currency(results.table[4,], "", 0)
rt5 <- currency(results.table[5,], "", 0)
rbind(rt1, rt2, rt3, rt4, rt5)
Кроме того, было бы здорово, если бы я мог получить первую строку вывода с 4 десятичными знаками и все остальные строки без десятичных дробей.