Domanda

Sto lavorando a un grande documento/script SWEAVE su un sistema Mac OS X, R versione 2.9.2. In alcune circostanze, sembra che SWEAVE stia reindirizzando StDout, in modo che quello x <- 1; print(x) Non dà nulla. (La console è ancora in esecuzione, come plot(x) fa apparire una trama come normalmente.) Quindi, due domande:

  1. Come faccio a costringere stdout a tornare alla console e,
  2. Perché SWEAVE lo fa e come?
È stato utile?

Soluzione

L'ho trovato, con un ampio uso di REEK. Il sink() La funzione reindirizza la console in un file. sink(NULL) annulla il reindirizzamento. Non sono ancora del tutto sicuro del perché SWEAVE crea un lavandino. Sospetto che i bug nel mio codice stessero facendo interrompere SWEAVE senza annullare il lavandino.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top