Ниже приведен пример того, что я испытываю
library(tidyverse)
library(janitor)
x <- data_frame(c1=c('a','a','b','b'),
c2=c('a','b','c','d'),
c3=runif(4,0,10),
c4=runif(4,10,20),
c5=runif(4,20,100))
x %>%
adorn_totals(c('col')) %>%
adorn_percentages('row') %>%
adorn_pct_formatting() %>%
adorn_ns('front')
Запуск этого кода обеспечивает следующий вывод:
c1 c2 c3 c4 c5 Total
a a (a) 1.0495149 (1.2%) 12.78693 (15.0%) 71.48728 (83.8%) 85.32373 (100.0%)
a b (b) 0.9217471 (0.9%) 19.71064 (20.1%) 77.67327 (79.0%) 98.30566 (100.0%)
b c (c) 9.0695540 (19.4%) 14.39917 (30.8%) 23.32479 (49.8%) 46.79351 (100.0%)
b d (d) 8.9398517 (7.8%) 18.53542 (16.1%) 87.43437 (76.1%) 114.90965 (100.0%)
Как видите, столбец c2
простодругой символьный столбец, и поэтому функции adorn_
не должны на него воздействовать, но при переходе от adorn_pct_formatting
к adorn_ns
он неожиданно мутирует в этом столбце.
Кто-нибудь знает, как предотвратитьэто при сохранении моего общего подхода ниже;это означает, что я продолжаю использовать функции adorn_
из janitor
?
Я знаю и способен писать код для вычисления и вставки N и% s в каждый конкретный столбец вручную, но я специально ищу способ сделать это, используя функции, представленные здесь, если это возможно.
Спасибо.