2016-11-30 14 views
1

フォーカスを明確にするためにタイトルを改訂しました。ニット出力はRmdとRnwの間で異なります。data.table出力例

Rマークダウンとdata.tableが驚くべき方法で相互作用するという異常があることがわかります。 LaTeXを編むときにも同じことは起こりません。 Rセッション内でリターンを持たないコマンドは、ニットのマークダウン出力内でリターンを引き起こします。私は

````{r} 
poolballs[ , weight2:=2 * weight] 
``` 

、バックRで出力を生成しない、次のようなコマンドに問題をトレースしかしRmarkdown内で、出力はpoolballs DTの完全なプリントを含んでいます。 LaTeXで同等のチャンクを編成すれば、同じことは起こりません。

私は値下げは2つのチャンク、

> poolballs[ , weight2:=2 * weight] 
> poolballs 

> head(poolballs) 

の同等としてここだということを解析するだけで最初の5行

```{r} 
poolballs[ , weight2:=2 * weight] 
head(poolballs) 
``` 

を表示しようとする、このような塊を書いたので、これはいくつかの面白いHTML出力を生成実証するマークダウンファイル

--- 
title: "Data Table Guide" 
author: 
- name: Paul Johnson 
    affiliation: Center for Research Methods and Data Analysis, University of Kansas 
    email: [email protected] 

date: "`r format(Sys.time(), '%Y %B %d')`" 
output: 
    html_document: 
    theme: united 
    highlight: haddock 
--- 

```{r setup, include=FALSE} 
knitr::opts_chunk$set(echo=TRUE, comment=NA) 
options(width = 70) 
``` 

```{r make_pb_dt} 
set.seed(234234) 
library(data.table) 
poolballs <- data.table(
    number = 1:15, 
    weight = rnorm(15, 45.7, 0.8), 
    diameter = c(3, 2.9, 3.1) #shows recyling 
) 
poolballs 
``` 

I want the following to show only head in line 2 
```{r} 
poolballs[ , weight2:=2 * weight] 
head(poolballs) 
``` 

HTMLのoutp UT:

http://pj.freefaculty.org/scraps/mre-dt.html

これは値下げの既知の機能であればすみません。私はチャンクを隠すことによってこのシワをコード化しましたが、やや不便です。今日私はそれについてあなたに尋ねるのに不思議です。私はLaTeXファイルに同じチャンクを書きました。面白いDT出力の問題は起こりません。 LaTeXのPDFへのリンクをhttp:/pj.freefaculty.org/scraps/mre-dt-3.pdf

答えて

0

最後のチャンクでは、knitrは、印刷しようとするオブジェクトが2つあり、両方の出力が得られます。これは機能ではなく、previous questionで対処されています。

あなただけそのチャンク内の最初のオブジェクトの頭を印刷したい場合は、あなたのコードは、head(poolballs[, weight2:=2 * weight])

+0

する必要がありますこれは、いくつかのレベルで間違っています。まず、最初の行は出力を生成しません! Rでそれを実行すると、それが表示されます。私はそれを印刷するためのマークダウンを求めなかった。第2に、マークダウンはnowebドキュメントとは異なる動作をしています。 Sweaveやknitrを使って同じチャンクをLaTeXファイルで実行します。いずれの場合も、最初の行は出力を行いません。私はその1行を再コード化したくない、私はそれをそのように書く目的を持っている。 LaTeXのニットを比較する:http://pj.freefaculty.org/scraps/mre-dt-3.pdf(Rnwの同じフォルダ)。 1行目は印刷されません。 – pauljohn32

+0

私はバグかもしれないが、それは間違いなく機能ではない。私はあなたが行っている 'data.table'割り当てが出力を生成すべきではないことを理解していますが、htmlのためのknitrの印刷メソッドがそれを認識しているとは思いません。 'R'オブジェクトを呼び出してそれをそれに応じて印刷しようとします。ここで詳しく読むことができます:https://stackoverflow.com/questions/15267018/knitr-gets-tricked-by-data-table-assignment –

関連する問題