2014-12-09 1 views
4

저는 Markdown을 처음 사용하고 있으며 이와 비슷한 문제가 없으므로 성공하지 못했습니다. Rmarkdown (Rstudio 및 knitr 포함)을 사용하여 패키지의 일부로 가져온 데이터 파일을 읽는 방법을 설명하는 비 네트를 작성합니다. 내 코드는Rmarkdown에서 시스템 명령의 결과를 html 파일로 출력하지 않습니다.

```{r, results=as.is} 

datafile <- system.file("extdata", "Marlin-tag38606.txt", package = "xtractomatic") 

system(paste("head -n5 ",datafile)) 

``` 

를 읽고 그래서 제대로 문제는이 호출의 결과가 있다는 것입니다,

> system.file("extdata", "Marlin-tag38606.txt", package = "xtractomatic") 

내가 네트에이 파일의 처음 몇 줄을 표시하려면 사용하여 데이터 파일에 액세스 할 수 있습니다 출력을 Rmarkdown 콘솔로 보내고 비 네트 HTML 파일로 보내지 마십시오. RStudio의 Rmarkdown 창에서

출력은 (그러나 더 좋은 포맷) :

내가 네트 텍스트로 출력 원하는 것을, 그러나이없는
|...................            | 29% 
label: unnamed-chunk-8 
date lon lat lowLon higLon lowLat higLat 
4/23/2003 203.899 19.664 203.899 203.899 19.664 19.664 
4/24/2003 204.151 19.821 203.912597 204.389403 18.78051934 20.86148066 
4/30/2003 203.919 20.351 203.6793669 204.1586331 18.79728188 21.90471812 
5/1/2003 204.229 20.305 203.9943343 204.4636657 18.90440013 21.70559987 
    |....................            | 31% 

. 결과 vignette 내에서 두 줄의 R 코드 만 있지만 시스템 호출의 출력은 없습니다. 조언을 주시면 감사하겠습니다. 감사. system()에 대한

카라 윌슨

답변

3

사용 intern = TRUE, 다음 cat() 출력 :

cat(system(paste("head -n5", datafile), intern = TRUE), sep = '\n') 
+0

Windows에서이 기능이 작동하지 않습니다. – Frank

+0

이것은 일종의 추한 것입니다. 더 좋은 방법이 없을까요? 나는 인트로 레벨의 프리젠 테이션에서'시스템 '의 간단한 사용을 보여 주려고하고 있으며, 이렇게하면 필요 이상으로 밀도가 높아 보인다. 이제는'eval = FALSE'라는 청크에 일반'system' 코드를 출력 한 다음 실제로'echo = FALSE'를 사용하여 코드를 실행합니다. – MichaelChirico

+0

추한 일이지만, 내가 알고있는 더 좋은 방법은 없습니다. 문제는'system()'의 결과가 다르게 출력되고'capture.output()'을 통해 쉽게 캡처 할 수 없다는 것입니다. –

0

Rmarkdown 문서에서 떠들썩한 파티 덩어리를 사용하여 나를 위해 일을한다. 의 extdata 디렉토리에 .CSV 파일이 패키지 testdat로 예를 들면 :

```{bash는}
머리 -N5 ~/R/x86_64에-PC-리눅스 GNU 라이브러리/3.3/testdat/extdata/2012.csv
```

HTML 파일에서 줄 것이다 :

## 14, 2012, Censo, 1775351,,
## 일 4, 2012, Votantes, 1135568,64.0,
## 14 2012 Nulos, 9168,0.8,
## (14), 2012 V & aacute; lidos, 1126400,99.2,
## ,, 14 2012, Blancos, 14640,1.3,

이 옵션은 질문 한 2014 년에 존재했지만 확실하지 않습니다.

관련 문제