Если мы предположим, что единственными объектами в вашем рабочем пространстве являются кадры данных, это может быть успешным:
cities <- objects() )
for (i in cities) { assign(i, get(i)[-1,])}
Объяснение:
Две вещи неверны с исходными кодами:
Один уже упоминался в комментариях."df" - это не то же самое, что df
.Вам необходимо использовать get
, чтобы преобразовать символьное значение в «истинное» R-имя, которое используется для получения объекта с таким именем.Результат object()
является только символьным значением.В R термин «имя» означает «языковой объект».Смотрите страницу помощи: ?mode
.(Существует потенциальная путаница с именами строк и столбцов, которые всегда являются «символьными» классами.) Это не похоже на SAS, который является языком макросов, у которого нет такого различия.
Вторая ошибка - попытка заменить i
в левой части <-
.Не удалось бы, даже если бы вы работали с реальными именами R.Функция assign
предназначена для обработки символьных значений, которые затем преобразуются в R имен.