Я пытаюсь сделать что-то, о чем другие люди уже спрашивали, например здесь . Цель состоит в том, чтобы создать еще один список с кадрами данных, которые были созданы путем подстановки единиц в исходном списке в соответствии с условием. Однако, в моем случае, фреймы данных связаны с sf (простые функции, загружаемые из шейп-файлов -shp).
Решение, предложенное в цитируемом вопросе,
lapply(list.of.DFs, function(x) filter(x, Variable == "A.String.Value"))
не работает для меня, потому что когда я запускаю его, он возвращает ошибку "Ошибка оценки: объект [переменная] не найден]" .
Если я изменю код на (цитируя имя переменной)
lapply(list.of.DFs, function(x) filter(x, "Variable" == "A.String.Value"))
код работает, но возвращает список фреймов данных без каких-либо строк (столбцы сохраняются).
Другие решения предлагают использовать функцию подмножества subset
, но я продолжаю сталкиваться с одной и той же ошибкой, и лучшее, что я достиг, - это тот же список фреймов данных без каких-либо строк, как раньше. Может ли это быть связано с тем, что кадры данных также являются классом sf? Кто-нибудь знает, как я мог бы решить эту проблему, не превращая их в датафреймы?