R: Как я могу помешать функциям украшения в janitor изменять столбец второстепенных символов? - PullRequest
0 голосов
/ 05 октября 2018

Ниже приведен пример того, что я испытываю

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 в каждый конкретный столбец вручную, но я специально ищу способ сделать это, используя функции, представленные здесь, если это возможно.

Спасибо.

...