2013-08-26 35 views
12

Pracuję z Rserve przez wiązania Ruby. To dość trywialne, aby nawiązać połączenie z Rserve'em, i zakładam, że dobrym pomysłem jest utrzymywanie tego połączenia globalnie, aby uniknąć narzutu rozrywania go i ponownego budowania go w razie potrzeby (nie pracuję w środowisku wielowątkowym) .Czyszczenie wszystkich obiektów zdefiniowanych przez użytkownika w obszarze roboczym R

Ponieważ zdefiniowane obiekty będą się zacinać i potencjalnie klasy z późniejszymi operacjami, chcę je usunąć. Widziałem:

myvar = 1 
rm(myvar) 

Jednak wolałbym ponownie zainicjować wszystko, aby uniknąć konieczności ręcznego śledzenia tego, co zdefiniowano. czy to możliwe? Czy wiąże się z tym znaczny narzut, jeśli tak?

+6

Czy szukasz 'rm (list = ls())'? –

+6

Z '? Rm':' ## remove (almost) everything in the working environment. ## Nie otrzymasz ostrzeżenia, więc nie rób tego, chyba że jesteś naprawdę pewien. rm (list = ls()) ' –

+3

Myślę, że dodanie' rm (list = ls (all = TRUE)) spowoduje usunięcie co najmniej wszystkiego. –

Odpowiedz

29

To jest trochę niebezpieczne, ale: rm(list=ls()) naprawdę, nie rób tego.

+0

jak usunąć niektóre zmienne? – Cina

+0

@Cina To pytanie może pomóc: http://stackoverflow.com/questions/2822532/how-can-i-neatly-clean-my-r-workspace-while-preserving-certain-objects?lq=1 – Seth

+2

Dlaczego to trochę niebezpieczne? Czy po prostu możesz przypadkowo usunąć coś, czego nie chcesz? – user1205197

1

Jeśli pracujesz z wylotem zestawu danych powiedzmy nazwany data_new, można użyć poniższy komentarz, aby usunąć wszystkie informacje o data_new z obszaru roboczego:

rm (dane = data_new)