5

optmatch次のようにSweaveドキュメントを読み込んでいます。

<<myCodeBlock, echo=FALSE>>=
library(optmatch, quietly=TRUE)
@

You're loading optmatch, by Ben Hansen, a package for flexible
and optimal matching. Important license information:
The optmatch package makes essential use of D. P. Bertsekas
and P. Tseng's RELAX-IV algorithm and code, as well as
Bertsekas' AUCTION algorithm and code.
Bertsekas and Tseng freely permit their software to be used for
research purposes, but non-research uses, including the use of it
to 'satisfy in any part commercial delivery requirements to
government or industry,' require a special agreement with them.
By extension, this requirement applies to any use of the
fullmatch() function. (If you are using another package that has
loaded optmatch, then you will probably be using fullmatch indirectly.)
For more information, enter relaxinfo() at the command line

ご覧のとおり、私はパッケージのロードメッセージを無音にするために考えられるあらゆる方法を試しましたが、無駄になりました。ストレートアップなどを使っただけなのcat()かと思いますが、大変迷惑です。LaTeX私の最終的な、美しく、統一されたPDFを読んでいる人が、RELAX-IVについて読む必要がないように、これを沈黙させる方法について何か考えはありますか?

動作していないように見えるその他のこと(Andrieのポインタから関連するスレッドを参照):

suppressMessages(library(optmatch))
suppressPackageStartupMessages(require("optmatch"))

メッセージはRでもポップアップするので、これは明らかにRの問題であり、Sweaveの問題ではないことに注意してください。

4

2 に答える 2

7

結果を非表示にするチャンクにパッケージをロードしてみてください。

<<packages,results=hide>>= 
require(optmatch) 
@

パッケージを使用する場合は、引用knitrする必要があります:hide

<<packages,results='hide'>>= 
require(optmatch) 
@
于 2011-11-15T21:43:56.480 に答える
3

これがあなたの問題に対するRの解決策です。パッケージ作成者はcat、標準のメッセージステートメントを使用するのではなく、コンソールにメッセージを出力するために使用します。sinkを使用してコンソール出力を一時ファイルに転送することにより、これらのメッセージを傍受できます。

<<myCodeBlock, echo=FALSE>>=
zz <- tempfile()
sink(file=zz)
library(optmatch, quietly=TRUE))
unlink(zz)
@

PS。SWeaveのみを使用するソリューション@XuWangであるため、この場合は明らかにはるかに適しています。

于 2011-11-15T21:53:01.417 に答える