knitr 出力を複数の列に縮小する

knitr 出力を複数の列に縮小する

ここでは非常に簡単な例を示します。私のデータセットには、列に 50 を超える名前があります。colnames() の出力も 50 行以上かかるので困っています。出力を複数の列に分割することは可能ですか? チャンクに追加する簡単なパラメータをいくつか使用するだけです。そうすれば、PDF ドキュメントが短くなります。

\documentclass{article}

\begin{document}
<<>>=
library(ggplot2)
colnames(diamonds)
@
\end{document}

サンプル出力

"carat"
"cut"
"color"
"clarity"
"depth"
"table"
"price"
"x"
"y"
"z" 

答え1

この質問に対するより良い答えはhttps://stackoverflow.com/questions/tagged/r しかし、縦方向のリストの場合はこれを試してください

\documentclass{article}
\begin{document}
<<>>=
cat(colnames(mtcars),sep="\n")
@
\end{document}

厄介な##をどうやって排除するかまだ検討中です

答え2

R. Schumacherの回答によると、チャンクの出力を 'asis'(LaTeXテキストとして)表示する場合は、LaTeXを\\セパレータとして使用し、出力を環境でフォーマットすることができます'multicols。この方法では、厄介な##はありません。;)

ムウェ

\documentclass{article}
\usepackage[paperheight=6cm,paperwidth=8cm,margin=1cm]{geometry}
\pagestyle{empty}
\usepackage{multicol}
\begin{document}
<<results='hide'>>=
cat(colnames(mtcars),sep="\\\\")
@
\setlength{\columnsep}{1cm}
\setlength\columnseprule{.4pt}
\begin{multicols}{3}
\noindent
<<echo=F,results='asis'>>=
cat(colnames(mtcars),sep="\\\\")
@
\end{multicols}
\end{document}

関連情報