ezANOVAパッケージのリストの一部から取ったテーブルをpdfに編成するrmarkdownドキュメントを作成しています。テーブルは、パンダパッケージを使用して作成されます。以下のおもちゃのデータセットを持つおもちゃのRmarkdownファイル。Rmarkdownとパンダを使用した表の列見出しの整列
---
title: "Table Doc"
output: pdf_document
---
```{r global_options, include=FALSE}
#set global knit options parameters.
knitr::opts_chunk$set(fig.width=12, fig.height=8, fig.path='Figs/',
echo=FALSE, warning=FALSE, message=FALSE, dev = 'pdf')
```
```{r, echo=FALSE}
# toy data
id <- rep(c(1,2,3,4), 5)
group1 <- factor(rep(c("A", "B"), 10))
group2 <- factor(rep(c("A", "B"), each = 10))
dv <- runif(20, min = 0, max = 10)
df <- data.frame(id, group1, group2, dv)
```
``` {r anova, echo = FALSE}
library(ez)
library(plyr)
library(pander)
# create anova object
anOb <- ezANOVA(df,
dv = dv,
wid = id,
between = c(group1, group2),
type = 3,
detailed = TRUE)
# extract the output table from the anova object, reduce it down to only desired columns
anOb <- data.frame(anOb[[1]][, c("Effect", "F", "p", "p<.05")])
# format entries in columns
anOb[,2] <- format(round (anOb[,2], digits = 1), nsmall = 1)
anOb[,3] <- format(round (anOb[,3], digits = 4), nsmall = 1)
pander(anOb, justify = c("left", "center", "center", "right"))
```
は今、私はいくつかの問題を抱えている
A)私は中央に整列テーブル内の列見出しを持っていると思いますが、これらの見出しの下に実際の列エントリはに合わせ、最後の3つの列について権利。
b)イタリック体の列見出し「F」と「p」を、イタリック体の「p < .05」列の「p」を、通常のフォントでも残りたいと思います。そこで彼らは、私がplyrを使用して列見出しの名前を変更しようとした::ので
anOb <- rename(anOb, c("F" = "italic(F)", "p" = "italic(p)", "p<.05" = ""))
のように名前を変更しかし、それは
ありがとうございます@daroczig私はイタリック体のためのマークダウンの書式を考えていたはずです。私はまだ.Rと.rmdの間の切り替えに慣れています。修正に関しては、私はまだGHの相対的初心者です。クローン/ステータス/追加/コミット/プッシュ/プルをあまり超えていません。このように、私のおもちゃの問題に対するあなたのコードの適合(セルを埋めることのない数字の左側に2つの空白を追加するのはそうですか?)は、私のものを少し超えています(例えば、 @はしなければなりません)。私の無知のために申し訳ありません。もう一度やり直してみます。 – llewmills
@llewmillsたとえば、 'devtools :: install_github( 'rapporter/pander @ simple-and-multiline-aligment-fix')'を使って 'pander'の開発版をインストールすれば、そのブランチを試してみることができます。以前と同じように 'pander'を使用してください(あなたのセッションを再開したり、パッケージを再ロードした後)。 – daroczig
最後のコメントに貼り付けたコードをコピーして、うまく読み込めました。 Rを再起動してパッケージをアンロードしてパッケージを再ロードしましたが、3桁の値(たとえば2.3)は列の右側にフラッシュされるのではなく、まだ中央に置かれています。 – llewmills