2015-12-31 5 views
6

knit::kablepander::pandocを使用して頻度テーブルを印刷していますが、これは一般的にHTML/Word/LaTeX出力に適しています。しかし、時には最終製品の寸法名を保存したいと考えています。残念ながら、panderknitrの両方がマークダウンに変換するときにこれらをドロップします。テーブルの淡色表示をニットまたはパンダ出力に保存しますか?

# create a simple table 
tab <- table(mtcars$gear, mtcars$carb) 

# add dimension names 
names(dimnames(tab)) <- c("gear", "carb") 

これは、テーブルを作成します。

carb 
gear 1 2 3 4 6 8 
    3 3 4 3 5 0 0 
    4 4 4 0 4 0 0 
    5 0 2 0 1 1 1 

しかし、今、私たちがして印刷する場合、たとえば、KABLE:

> kable(tab) 

| | 1| 2| 3| 4| 6| 8| 
|:--|--:|--:|--:|--:|--:|--:| 
|3 | 3| 4| 3| 5| 0| 0| 
|4 | 4| 4| 0| 4| 0| 0| 
|5 | 0| 2| 0| 1| 1| 1| 

ませんディメンション名! (そして?kableはそれらを含むオプションを示していません)

これらを保存するツールについてのご意見はありますか?私はdescr:CrossTableがそのトリックをしていることに気付きましたが、私が省略したいと思う余分な情報がたくさん含まれています。

多くのありがとうございます。

答えて

5

あなたは暗黙的にディメンション名を持つフラットな分割表を作成するために、例えばftableを使用することができます。

> pander::pander(ftable(tab)) 

---- ---- - - - - - - 
    carb 1 2 3 4 6 8 

gear     

3  3 4 3 5 0 0 

4  4 4 0 4 0 0 

5  0 2 0 1 1 1 
---- ---- - - - - - - 

それともなどdescr::CrossTableから必要とされていない細胞も抑えることができます。

> pander(descr::CrossTable(tab, prop.r = FALSE, prop.c = FALSE, prop.chisq = FALSE)) 

------------------------------------------------------------------------------ 
&nbsp;\ carb\ &nbsp;\ &nbsp;\ &nbsp;\ &nbsp;\ &nbsp;\ &nbsp;\ 
    gear  1   2   3   4   6   8  Total 
--------- -------- --------- --------- --------- --------- --------- --------- 
**3**\ &nbsp;\ &nbsp;\ &nbsp;\ &nbsp;\ &nbsp;\ &nbsp;\ &nbsp;\ 
    N\  3\  4\  3\  5\  0\  0\   15\ 
Total(%) 9.375% 12.500% 9.375% 15.625% 0.000% 0.000%    

**4**\ &nbsp;\ &nbsp;\ &nbsp;\ &nbsp;\ &nbsp;\ &nbsp;\ &nbsp;\ 
    N\  4\  4\  0\  4\  0\  0\   12\ 
Total(%) 12.500% 12.500% 0.000% 12.500% 0.000% 0.000%    

**5**\ &nbsp;\ &nbsp;\ &nbsp;\ &nbsp;\ &nbsp;\ &nbsp;\ &nbsp;\ 
    N\  0\  2\  0\  1\  1\  1\   5\  
Total(%) 0.000% 6.250% 0.000% 3.125% 3.125% 3.125%    

    Total  7  10   3  10   1   1  32  
------------------------------------------------------------------------------ 

かをGHのチケットを提出してください:

+0

完璧に機能しました!これはとてもシンプルなので、私は助けを求める前にそれを試していないとは信じられません。ありがとう! – ChadBDot

+0

もう1つ - 私は、あなたの答えの中の 'pander :: pander(ftable(tab)) 'の出力に、列、行、または次元名のいずれかの引用符がないことに気付きました。しかし、同じコマンド(OS X 10.11.2用のR 3.2.2ではPander 0.6.0)を実行すると、すべて二重引用符で囲まれます。どのようにこれを抑制する考えですか?再度、感謝します。 – ChadBDot

+0

@ChadBDotは最近のバージョンの 'pander'では起こりません - ' devtools :: session_info() 'と完全な再現可能な例(' tab'を作成する上の行のように'pander' +' ftable'コール?それは非常に役立つでしょう – daroczig

関連する問題