【R】kableExtra

1. はじめに

kableExtraは、HTML形式等で複雑なテーブルを作成してくれるパッケージです。

2. インストール

CRANからインストールできます。

install.packages("kableExtra")

3. つかってみる

最も簡単な使い方はkbl()関数でテーブルを表示することです。

library(kableExtra)

kbl(iris[1:10,])

kabel_styling()関数を使用すると見栄え良く成形してくれます。

iris[1:10,] %>%
  kbl() %>%
  kable_styling()

また、代替として、kable_paper, kable_classic, kable_classic_2, kable_minimal, kable_materialの6つのテーマもあります。kable_classicの例はこちら。

iris[1:10,] %>%
  kbl(caption = "Iris Data") %>%
  kable_classic(full_width = F, html_font = "Cambria")

インラインでグラフも掛けます。

Sepal_Length_list <- split(iris$Sepal.Length, as.factor(iris$Species))
Sepal_Width_list <- split(iris$Sepal.Width, as.factor(iris$Species))
Petal_Length_list <- split(iris$Petal.Length, as.factor(iris$Species))
Petal_Width_list <- split(iris$Petal.Width, as.factor(iris$Species))

inline_plot <- data.frame(Species = c("setosa", "versicolor", "virginica"), 
                          Sepal_Length_box = "", 
                          Sepal_Width_hist = "",
                          Petal_Length_line = "", 
                          Petal_Width_points = ""
                          )

inline_plot %>%
  kbl(booktabs = TRUE) %>%
  kable_paper(full_width = FALSE) %>%
  column_spec(2, image = spec_boxplot(Sepal_Length_list)) %>%
  column_spec(3, image = spec_hist(Sepal_Width_list)) %>%
  column_spec(4, image = spec_plot(Petal_Length_list, same_lim = TRUE)) %>%
  column_spec(5, image = spec_plot(Petal_Width_list, type = "p")) 

4. さいごに

テーブルってなかなかきれいに書けないので、こういうパッケージがあると大変重宝します。

Add a Comment

メールアドレスが公開されることはありません。