2012-05-21 10 views
5

나는 시스템 명령 사용 R에서 쉘 스크립트를 실행 알고 내 "명령"의 결과가 표를 인쇄하는 경우, 그러나R에서 셸 스크립트를 실행하고 출력을 테이블로 가져 오는 방법은 무엇입니까?

my.table <- system(command,intern=TRUE) 

, 나는 R 테이블을 읽을 수 자체 데이터 구조로 직접 변환 할 수 있습니다. (데이터 프레임과 같은 것) 쉬운 방법이 있습니까? "table"의 현재 출력은 문자열 테이블입니다. 내가 원하는 건 R 개체는 read.table()입니다. 그 결과 '표'라인을 표시하는 공백 구분 및 캐리지 리턴이있는 경우

+0

system 이상의 메모리와 시간에 효율적입니다. 몇 가지 자발적인 제안 : 1)'->'할당은 기술적으로는 정확하지만 피해야합니다. 2) 재현 가능한 질문을 게시하십시오 (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example). 이 경우 샘플 출력을 게시하고 싶을 것입니다. –

+0

"-> 과제는 기술적으로 정확하지만 피해야합니다."무엇? – Hansi

답변

4

, 당신은 read.table의 '텍스트'인수에 결과를 전달해야합니다 :

inp.tbl <- read.table(text = system(command,intern=TRUE)) 
+0

정말 고마워요! 그것은 내 문제를 해결 !! – Pengyao

+0

(이전 버전의 R 사용자를위한주의 사항 :'read.table'에 대한 'text'인수와 그 파생어는 비교적 최근에 추가 된 것입니다.) –

4

을 내가 사용 기대 pipe 난 당신이 자신을 구문 분석 텍스트를해야 할 것이다 의심 intern

inp.tbl <- read.table(pipe(command)) 
관련 문제