2011-01-20 2 views
3

Python에서 RPy2에 import 인 패키지를 가져 오는 스크립트를 실행할 때마다 콘솔에 항상 여분의 행이 표시됩니다. 아래 예를 붙여 넣었습니다. 어떻게 그 행동을 억제 할 수 있습니까?Python의 RPy2에서 패키지를 가져올 때 콘솔 출력을 어떻게 억제 할 수 있습니까?

CookieJar:r cookies$ python script.py 

    ‘tseries’ version: 0.10-24 

    ‘tseries’ is a package for time series analysis and computational 
    finance. 

    See ‘library(help="tseries")’ for details. 

답변

6

일시적으로 코드의 스팸 피스 바로 앞의 블랙홀로 출력 스트림을 리디렉션 할 수 있습니다.

당신의 R 스크립트에서
import sys 

class Blackhole(object): 

    def write(self, string): 
     pass 

stdout = sys.stdout 
sys.stdout = Blackhole() 

function_el_spammo() 

sys.stdout = stdout 
2

, 나는

require(tseries, quietly = TRUE) 
6
require(tseries, quietly = TRUE) 게다가

sink()를 사용하여, 또는 파이썬 상당을 사용하여 (단지의 다른 능/패키지를 호출하는 경우 경우) tseries 패키지를 미리로드 것 , 또한 간단합니다.

suppressMessages(library(tseries)) 

선호하는 것이 있습니다.

관련 문제