library("formattable")

Overview

This package is used for formatting vectors and data frames to improve data presentation.

Install using

install.packages("formattable")

but you really need the github version

devtools::install_github("renkun-ken/formattable")

Examples

The package provides a few convience functions for formatting data, such as

library("formattable")
percent(c(0.1, 0.02, 0.03, 0.12))

and

accounting(c(1000, 500, 200, -150, 0, 1200))

But the package is best used to produce pretty tables

dd = data.frame(
  id = 1:10,
  name = c("Bob", "Ashley", "James", "David", "Jenny",
    "Hans", "Leo", "John", "Emily", "Lee"),
  age = c(28, 27, 30, 28, 29, 29, 27, 27, 31, 30),
  grade = c("C", "A", "A", "C", "B", "B", "B", "A", "C", "C"),
  test1_score = c(8.9, 9.5, 9.6, 8.9, 9.1, 9.3, 9.3, 9.9, 8.5, 8.6),
  test2_score = c(9.1, 9.1, 9.2, 9.1, 8.9, 8.5, 9.2, 9.3, 9.1, 8.8),
  final_score = c(9, 9.3, 9.4, 9, 9, 8.9, 9.25, 9.6, 8.8, 8.7),
  registered = c(TRUE, FALSE, TRUE, FALSE, TRUE, TRUE,
                 TRUE, FALSE, FALSE, FALSE),
  stringsAsFactors = FALSE)
formattable(dd, list(
  age = color_tile("white", "orange"),
  grade = formatter("span",
    style = x ~ ifelse(x == "A", style(color = "green",
                                       font.weight = "bold"), NA)),
  test1_score = normalize_bar("pink", 0.2),
  test2_score = normalize_bar("pink", 0.2),
  final_score = formatter("span",
    style = x ~ style(color = ifelse(rank(-x) <= 3, "green", "gray")),
    x ~ sprintf("%.2f (rank: %02d)", x, rank(-x))),
  registered = formatter("span",
    style = x ~ style(color = ifelse(x, "green", "red")),
    x ~ icontext(ifelse(x, "ok", "remove"), ifelse(x, "Yes", "No")))
))

Links



jr-packages/jrAutomate documentation built on Dec. 14, 2019, 6:35 p.m.