¿Cómo puedo suprimir Yo la salida a la consola cuando la importación de paquetes en RPy2 en Python?
Pregunta
Siempre que tengo un script importación de paquetes con import
en RPy2 en Python, siempre hay algunas líneas adicionales continúan apareciendo en la consola. Pegué en un ejemplo a continuación. ¿Cómo puedo suprimir ese comportamiento?
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.
Solución
Se puede redirigir temporalmente el flujo de salida a un agujero negro justo antes de que la pieza de spam de código.
import sys
class Blackhole(object):
def write(self, string):
pass
stdout = sys.stdout
sys.stdout = Blackhole()
function_el_spammo()
sys.stdout = stdout
Otros consejos
Además require(tseries, quietly = TRUE)
y usando sink()
, o su equivalente Python, existe también la sencilla
suppressMessages( library( tseries ))
que yo prefiero.
En la secuencia de comandos R, me gustaría cargar previamente el paquete tseries
(por si acaso si es llamado por algunos otros funcio / paquete) utilizando
require(tseries, quietly = TRUE)
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow