2

knitrの機能を使用する際、数字の前後に記号や文字を追加したいのkableですが、効率よく行う方法がわかりません。ただし、その方が優れているか、効率的であるかpandocについても検討したいと思います。pander

最終結果は、HTML テーブル...または 1 つの非常に優れたグラフィックである必要があります....

次のコードは、.Rmd ファイルにある再現可能なモックの例として参照してください。

### Notional and Cumulative P&L

```{r echo=FALSE}
Notional <- 10000
yday_pnl <- -2942
wtd_pnl <- 2300
mtd_pnl <- -3334
ytd_pnl <- 5024

yday_rtn <- (yday_pnl/Notional)*10000
wtd_rtn <- (wtd_pnl/Notional)*10000
mtd_rtn <- (mtd_pnl/Notional)*10000
ytd_rtn <- (ytd_pnl/Notional)*10000

Value <- c(Notional,yday_pnl,wtd_pnl,mtd_pnl,ytd_pnl)
rtn <- c(NA,yday_rtn,wtd_rtn,mtd_rtn,ytd_rtn)

COB.basics <- as.data.frame(cbind(Value,rtn))
rownames(COB.basics) <- c('Notional','yday pnl','wtd_pnl','mtd_pnl','ytd_pnl')
```

```{r results='asis',echo=FALSE}
kable(COB.basics,digits=2)
```

Excel の通貨または会計の形式タイプと同様に、値フィールドにValue列の $ 記号を付けrtnたいと思います。また、列の数字の後に文字列を付けたいと思いbpsます...読みやすさのためにも可能です小数点の前にある場合、3 桁の後にコンマがありますか? つまり、千などを表す。

また、セルに色を付けることは可能ですか? また、テキスト/数字にも色を付けますか? つまり、負の値の場合は赤ですか?

4

1 に答える 1

2

による部分解pander:

  1. panderすべての数値に使用されるように「大きなマーク」を設定します。

    panderOptions('big.mark', ',')
    
  2. また、テーブル構文をrmarkdown(オプション、現在 rmarkdoen v2 は Pandoc も使用しているため、以前に提供されていた形式multilineと比較していくつかの優れた機能を備えているため) に設定することもできます。rmarkdown

    panderOptions('table.style', 'rmarkdown')
    
  3. whichたとえば、いくつかのカスタム R 式でいくつかのセルを強調表示できます。

    emphasize.strong.cells(which(COB.basics > 0, arr.ind = TRUE))
    
  4. を呼び出すだけpanderですdata.frame

    > library(pander)
    > emphasize.strong.cells(which(COB.basics > 0, arr.ind = TRUE))
    > panderOptions('big.mark', ',')
    > pander(COB.basics)
    
    -----------------------------------
        &nbsp;       Value       rtn   
    -------------- ---------- ---------
     **Notional**  **10,000**    NA    
    
     **yday pnl**    -2,942    -2,942  
    
     **wtd_pnl**   **2,300**  **2,300**
    
     **mtd_pnl**     -3,334    -3,334  
    
     **ytd_pnl**   **5,024**  **5,024**
    -----------------------------------
    
    > panderOptions('table.style', 'rmarkdown')
    > pander(COB.basics)
    |     &nbsp;     |  Value  |  rtn   |
    |:--------------:|:-------:|:------:|
    |  **Notional**  | 10,000  |   NA   |
    |  **yday pnl**  | -2,942  | -2,942 |
    |  **wtd_pnl**   |  2,300  | 2,300  |
    |  **mtd_pnl**   | -3,334  | -3,334 |
    |  **ytd_pnl**   |  5,024  | 5,024  |
    

セルに色を付けるには、いくつかのカスタム HTML/CSS マークアップを手動で追加することができます (または長期的に pdf を使用する場合は LaTeX を使用します) %https://github.com/Rapporter/panderで機能リクエストを送信してください。pasteapply

于 2014-07-18T16:04:40.407 に答える