web-dev-qa-db-ja.com

ワークスペースからいくつかの特定のオブジェクトだけを消去するにはどうすればよいですか。

ワークスペースからデータを削除したいのですが。 [すべてクリア]ボタンをクリックすると、すべてのデータが削除されます。ただし、特定のデータだけを削除したいのですが。

たとえば、データセクションにこれらのデータフレームがあります。

data
data_1
data_2
data_3

dataを保持したまま、data_1data_2、およびdata_3を削除したいと思います。

私はdata_1 <- data_2 <- data_3 <- NULLを試しましたが、これはデータを削除します(私は思う)が、それでもワークスペース領域に保持しているので、私がやりたいことはそれだけではありません。

140
Ford

?rmと入力すると答えが見つかります。

rm(data_1, data_2, data_3)
214
Pop

名前付き類似オブジェクトのセット全体を削除するための便利な方法:

rm(list = ls()[grep("^tmp", ls())])

これにより、名前が文字列 "tmp"で始まるすべてのオブジェクトが削除されます。

編集:pattern引数を使用して、Gseeのコメントに従って:

rm(list = ls(pattern = "^tmp"))

編集:Rafaelのコメントに答える、オブジェクトのサブセットのみを保持する1つの方法は、保持したいデータに特定のパターンを付けることです。たとえば、名前がpaperで始まっていないすべてのオブジェクトを削除したい場合は、次のコマンドを発行します。

rm(list = grep("^paper", ls(), value = TRUE, invert = TRUE))
63
mbask

次のコマンドは

rm(list=ls(all=TRUE))
14
jaamit

次のコマンドを使う

remove(list=c("data_1", "data_2", "data_3"))
7
S. Elzwawi

部分名を使用してオブジェクトを見つけるために使用されるapropos関数を使用できます。

rm(list = apropos("data_"))
4
Saroj Nayak

変数のグループの1つを削除したいだけであれば、リストを作成して必要な変数だけを保持することができます。 rm関数は、 "data"以外のすべての変数を削除するために使用できます。これがスクリプトです。

0->data
1->data_1
2->data_2
3->data_3
#check variables in workspace
ls()
rm(list=setdiff(ls(), "data"))
#check remaining variables in workspace after deletion
ls()

#note: if you just use rm(list) then R will attempt to remove the "list" variable. 
list=setdiff(ls(), "data")
rm(list)
ls()
3
DanThompson
paste0("data_",seq(1,3,1)) 
# makes multiple data.frame names with sequential number
rm(list=paste0("data_",seq(1,3,1))
# above code removes data_1~data_3
2
hyunwoo jeong

RStudioを使用している場合は、rm(list = ls())アプローチを使用しないことを検討してください!*代わりに、頻繁にCtrl + Shift + F10ショートカットを使用してRセッションを再開してください。 。これは、現在定義されている一連のユーザー定義変数を無効にし、ロードされたパッケージ、デバイスなどをクリアするための最速の方法です。作業の再現性は、この習慣を採用することによって著しく向上します。

より徹底的な議論のために(h/t @kierisi)のためのRstudioコミュニティの この素晴らしいスレッド を見てください(メインの要旨は私が述べたことによって捕らえられます)既に)。

私は最初の数年間のRコーディングの特徴的なスクリプトをrm "トリック"で始まるスクリプトの後に認める必要があります - 私は自分のRのキャリアを始めようとしている人へのアドバイスとしてこの答えを書いています。

*もちろんattachのように - これには合法的な使用法がありますが、初心者のユーザーは後日そのブリッジを通過するほうがはるかにうまく機能するでしょう(IMO)。

2
MichaelChirico
  1. RStudioでは、EnvironmentタブがGridListではなく)モードになっていることを確認してください。

  2. 環境から削除したいオブジェクトにチェックマークを付けます。

  3. ほうきのアイコンをクリックします。

1
earcanal

すべてのデータを消去するには

Misc>Remove all objectsをクリックしてください。

行ってもいい。

コンソールをクリアするには

edit>Clear consoleをクリックしてください。

コードは不要です。

1
Abdul