Imitar a formatação condicional do Excel em R

cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br


[Esteartigofoipublicadopelaprimeiravezem[Thisarticlewasfirstpublishedon triKnowBits, e gentilmente contribuiu para os R-blogueiros]. (Você pode relatar um problema sobre o conteúdo desta página aqui)


Deseja compartilhar seu conteúdo com R-blogueiros? clique aqui se você tiver um blog ou aqui se não tiver.

o DT package é uma interface entre o R e a biblioteca JavaScript DataTables (documentação do RStudio DT). No Exemplo 3 (nesta página), eles mostram como formatar uma tabela com um mapa térmico. Esta postagem modifica o exemplo para

  1. formate cada coluna individualmente
  2. sombra em verde ao invés de vermelho
  3. use a sintaxe base R em vez de canalizar
  4. omita os apetrechos extras da tabela exibida (da resposta para esta postagem do stackoverflow), exceto
  5. inclua um título.

Aqui, geramos dados semelhantes aos do Exemplo 3, mas com os valores médios crescendo por coluna

set.seed(12345)
df = as.data.frame(
  cbind(round(rnorm(10, mean = 0), 3), 
  round(rnorm(10, mean = 4), 3), 
  round(rnorm(10, mean = 8), 3), 
  round(rnorm(10, mean = 16), 3), 
  round(rnorm(10, mean = 32), 3), 
  sample(0:1, 10, TRUE)))

Usando o código no exemplo – modificado para verde – os valores mais escuros aparecem naturalmente nas colunas V4 e V5.

Mas não é isso que queremos.

cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br

Para que cada coluna tenha sua própria escala, basta aplicar o algoritmo do RStudio a cada coluna de df em um loop. O truque para notar é que formatStyle quer um Tabela de dados objeto como seu primeiro argumento e produz um Tabela de dados objeto como resultado. Portanto, comece com uma simples Jane Tabela de dados e formate sucessivamente cada coluna, salvando o resultado sempre. Quase como construir um ggplot. No final, veja o resultado final.

# Start with a (relatively) plain, unformatted datatable object
dt                     options = list(dom = 't', ordering = FALSE),
                    caption = "Example 3 By Column")
# Loop through the columns formatting according to that column's distribution
for (j in seq_along(df)) {
  # Create breaks for shading column values high to low
brks # Create shades of green for backgrounds
y clrs # Format cells in j-th column
dt }
dt
Os atuários no meio da multidão podem reconhecer a imagem na parte superior da postagem como a tabela de taxas de links do GenIns conjunto de dados no pacote ChainLadder. Não parece haver tendências distintas nos índices por idade.
Leia Também  Q é para qplot versus ggplot



Se você chegou até aqui, por que não inscreva-se para atualizações do site? Escolha o seu sabor: e-mail, twitter, RSS ou facebook …



cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br