【R】mmtable2

1. はじめに

mmtable2は、ggplotのpatchworkの文法を用いてテーブルを作ったり編集したりできるパッケージです。

2. インストール

Githubからインストールします。

devtools::install_github("ianmoran11/mmtable2")

3. つかってみる

基本的に下記の関数を使って表のレイアウトを決めていきます。

例にあるように、tidyな表からuntidyな表を作ってみます。

library(gapminder)
library(dplyr)
library(tidyr)
library(stringr)
library(purrr)
library(gt)
library(mmtable2)

row_list <- cells_body(rows = c(3,7,11))
style_list = list(cell_text(align = "left"))

gm_table <- 
  gapminder_mm %>% 
  mmtable(value) +
  header_left(year) +
  header_top(country) +
  header_left_top(var)  +
  header_top_left(continent)  +
  table_format(
    locations = row_list,
    style = style_list) +
  header_format(continent,style_list)

gm_table 

patchworkのように、+、/のオペレータを使って表を結合できます。

row_list <- cells_body(rows = c(3))

gm_df_LE <- gapminder_mm %>% filter(var == "Life expectancy")

gm_table_LE <- 
  gm_df_LE %>% 
  mmtable(value) +
  header_left(year) +
  header_top(country) +
  header_top_left(continent)  +
  header_top_left(var)  +
  table_format(
    locations = row_list,
    style = style_list) +
  header_format(continent,style_list)

gm_table_LE 

gm_df_POP <- gapminder_mm %>% filter(var == "Population")

gm_table_POP <- 
  gm_df_POP %>% 
  mmtable(value) +
  header_left(year) +
  header_top(country) +
  header_top_left(continent)  +
  header_top_left(var)  +
  table_format(
    locations = row_list,
    style = style_list) +
  header_format(continent,style_list)

gm_table_POP

tbl_all <- gm_table_LE + gm_table_POP
tbl_all

4. さいごに

表の操作を柔軟にできるパッケージですね。

Add a Comment

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