Удалить все объекты данных R из глобальной среды - PullRequest
0 голосов
/ 15 января 2020

Мне нужна функция для удаления всех объектов в поле данных Глобальной среды (выделено ниже). Я не знаю конкретно всех классов объектов, которые там появляются, однако я бы хотел удалить все, кроме векторов, целых чисел и функций.

enter image description here

Заранее спасибо.

Ответы [ 2 ]

2 голосов
/ 15 января 2020

Кажется, что вкладка данных содержит что-то с более чем одним измерением.

Если вы сделаете ls(), вы получите строки символов с именами всех объектов в глобальной среде. Вы можете представить любой из этих объектов, вызвав get("object_name"), чтобы получить количество измерений, которое он имеет, вызвав length(dim(get("object_name"))). Если это значение больше 1, вы знаете, что это один из объектов, которые вы хотите удалить.

Поэтому все, что вам нужно сделать, - это применить length(dim(get("object_name"))) > 1 к именам глобальных объектов, полученных ls(). Вы можете сделать это с sapply:

rm(list = ls()[sapply(ls(), function(x) length(dim(get(x))) > 1)])
1 голос
/ 15 января 2020

Используйте приведенный ниже код: вместо тех переменных, которые вы хотите сохранить в кавычках, см. Пример ниже.

rm(list=setdiff(ls(), "keep_variable"))

Другой вариант - изменить список на сетку и нажать на переменные, которые вы не делаете. хотите и нажмите чистую кнопку. Это удалит все нежелательные переменные.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...