2016-10-24 10 views
0

xtable周波数のテーブルの印刷方法は現在base::tableからわかりません。私は今、データフレームにそれをIに変換されないと、私は必要に応じてcolnamesを使って見出しを変更します。xtableと周波数のテーブルは、行ごとに印刷

dset <- data.frame(rpois(100, 1)) 
dset.print <- as.data.frame(table(dset)) 
colnames(dset.print) <- c("smth", "freq") 
xtable(dset.print) 

、私が好きなものをすることでtable(dset)の実際の出力のように(この表の行方向を印刷します正面の見出し)。私はこのようなものを試しました

dset.print <- t(as.matrix(table(dset))) 
dset.print <- cbind(c("smth", "freq"), as.data.frame(dset.print)) 

しかし、これは私が欲しかったものを正確に与えていませんでした。

+0

kable()またはpander()の使用を検討しますか? pander()からの出力は、HTML、PDF、MS Wordでかなりよく見えます。以下の私の答えでxtableが必要とするように、print "type"を変更する必要はありません。列名がないと、Wordでちょっと面白く見えます。 –

答えて

1

これは、PDFに編成している場合は、これはかなり良いようです。 MS WordやHTMLに編み込んでいる場合は、のprint(dset.xtab、type = "html")を指定してください。あなたは美しいものを美しいものとして見つけることはできません。

```{r xtable, echo=FALSE, message=FALSE, warning=FALSE, results='asis'} 
library(xtable) 

dset <- data.frame(rpois(100, 1)) 

dset.print <- as.data.frame(table(dset)) 
dset.print <- rbind.data.frame(as.character(dset.print[,1]), dset.print[,2]) 
names(dset.print) <- rep('', ncol(dset.print)) 
rownames(dset.print) <- c('smth', 'freq') 

dset.xtab <- xtable(dset.print) 

print(dset.xtab) 

``` 
+0

優先度はpdfですので、問題ありません。実際には、上記のデータフレームを直接転置できることが分かりました(すべてのデータは単にcharに強制されます)。ありがとう。ところで、 'dset.print [、1]'を強制する必要はありません。 –

+0

実際には、 'dset.print [、1]'を強制する必要があります。私はこの行動を期待していませんでした! –

+0

私はdset.print [、1]にビンのラベルが含まれていると信じています...あなたはそれらを「スムーズ」と呼んでいますよね?彼らは要因として始まります。強要しないと、因子数が返されるので、本当に混乱する可能性があります。この場合、{1,2,3 ...}のスムースファクターとポアソン分布のビンは{0,1,2 ...}です。 –

関連する問題