knitrパッケージのkable関数を使えば、matrixやdata.frameなどの表形式をきれいに出力してくれるが、ftable関数を用いた多重クロス集計の結果は、kable関数を使うことができない。

これは非常に残念なので、他の方法できれいに出力する方法をお伝えする。ちなみにこの方法ではPDF出力のみの対応となるので注意してほしい。

手順を簡単に説明すると、多重クロス集計の部分だけをTexに変換して直接出力するというやり方となる。

まず準備として、ftable関数の結果をTexに変換するための関数をもつパッケージsimsalaparをインストールする。


> install.packages('simsalapar')

実際のコードの書き方は、以下のコードを見ていただければお分かりになるだろう。
simsalaparパッケージのtoLatex関数でTex形式に変換している。

注意点としては、まず、最初のheader-includesでbooktabsを呼び出して置かなければならない。これは、toLatex関数で変換された表に罫線topruleなどが含まれるからである。

次に、チャンク内の「result=’asis’」である。これは、このチャンク内で囲まれた部分の出力をそのまま渡すことを指定している。


---
title: "Sample"
header-includes:
   - \usepackage{booktabs}
output: 
    pdf_document:
        latex_engine: xelatex
---

```{r}
ft <- ftable(Titanic, row.vars = c(1, 2))

ft
```

```{r, results='asis'}
library(simsalapar)
toLatex(ft)
```

how-to-output-in-pdf-buautiful-multiplex-cross-tabulatoin-in-knitr-2

関連する記事

  • R言語 CRAN Task View:クラスター分析&有限混合モデルR言語 CRAN Task View:クラスター分析&有限混合モデル CRAN Task View:Cluster Analysis & Finite Mixture Modelsの英語での説明文をGoogle翻訳を使用させていただき機械的に翻訳したものを掲載しました。 Maintainer: Friedrich Leisch, Bettina Gruen Contact: Bettina.Gruen at […]
  • Ubuntu MongoDBのインストールする手順Ubuntu MongoDBのインストールする手順 Ubuntu16.04にMongoDB3.4をインストールする手順をお伝えいたします。 環境 今回の作業環境を確認しておきます。また、以下の作業はすべてターミナルにて行っております。 Ubuntuのバージョン $ cat […]
  • R dplyrパッケージのgroup_by_関数で複数の文字列を指定する方法R dplyrパッケージのgroup_by_関数で複数の文字列を指定する方法 Rのdplyrパッケージのgroup_by関数は指定した列をグルーピングできるので便利ですが、文字列を指定できません。 このパッケージのgroup_by_関数は文字列を指定できますが、複数の文字列を指定する場合には少し工夫が必要になります。 ここでは、異なるダイエットの雛の体重と年齢が収められているChickWeightをサンプルデータとします。 > […]
  • 度数分布表とヒストグラム度数分布表とヒストグラム 数値データの集合をただ眺めても、そのデータの特徴をつかむのは大変難しい。しかし、そのデータを表にまとめたもの、またはグラフにすると一目瞭然だ。特に、グラフにしたものは、大変分かりやすい。表にまとめたものを度数分布表、グラフにしたものをヒストグラムという。 では、早速具体的に見ていく。 度数分布表 度数分布表とは、以下の表のことを言う。ここで用いたデータは、統計Rに付 […]
  • R dplyrパッケージで複数の列を文字列として指定し結合された列を追加する方法R dplyrパッケージで複数の列を文字列として指定し結合された列を追加する方法 Rのdplyrパッケージのmutate関数は新たに列を追加する関数です。 ここでは、mutate関数に文字列として与えた列に対して、paste関数で統合した結果を新たに追加する方法をお伝えします。 サンプルデータとして、統計的な学生の髪と目の色が収められているHairEyeColorを用います。 ただし、このサンプルデータはtableとなっておりますので、実際にはd […]
R knitrできれいな多重クロス集計をPDFで出力する方法