R
で新しいセッションを開始するにはどうすればよいknitr
ですか?rm(list=ls())
同等ではないので、のようなものを使用するのではなく、新しいセッションを開始したいと思います。
<<myname>>=
#some R code
@
<<another_chunk>>=
#start a new R session
#more R code
@
さて、 GeorgRußによるR-helpリストの回答に触発されて、私はあなたにとってより実質的な何かを持っています。彼は、Rを起動時の状態に戻すために、3つのことを提案しています。私は、この6つのステップのマニュアルを作成しました。
まず、起動時に実行しているパッケージの文字列を保存します(これは、他のコードを実行する前に、他の何よりも先に実行する必要があります)。
foo <- .packages()
次に、Rをリセットする場合は、前述のとおり、次のように実行します。
rm(list=ls())
すべてのオブジェクトを削除します。次に、3番目に、実行します。
bar <- .packages()
現在のパッケージの文字列を取得します。に続く、
foobar <- setdiff(bar, foo)
第5に、この回避策ループとの違いを取り除きます。
toRemove <- paste("package:", foobar, sep='')
#or paste0("package:", foobar) in R-2.15.0 or higher
for(i in seq_along(foobar)) {
detach(toRemove[i], character.only=TRUE)
}
第6に、設定に応じて、.Rprofileを調達します。
source(".Rprofile")
これにより、Rは開始時の状態になります。私は何かを見落としていたかもしれません。
で新しいRセッションを開始する代わりにknitr
、次のようにターミナル(またはコマンドウィンドウ)で新しいRセッションを開始することをお勧めします。
R -e "library(knitr); knit('your_input.Rnw')"
Windowsを使用している場合は、Rのbinディレクトリを環境変数に配置する必要がありますPATH
(これを行う方法を説明するのは非常にうんざりです。Windowsの世界にいる場合は、自分でグーグルで検索するか、LyXSweaveを参照してください。マニュアル)。
ただし、ほとんどの編集者は、SweaveまたはLyXやRStudioなどを呼び出すときに、新しいRセッションを開始します。http : //yihui.name/knitr/demo/editors/knitr
で、より多くの可能な編集者を見つけることができます。ターミナルに電話します。R -e ...