R вызывает фрейм данных по имени переменной внутри функции координат (пакета sp) - PullRequest
0 голосов
/ 18 декабря 2018

Я потратил некоторое время, пытаясь понять, почему это не работает, но я просто не мог понять это.Я работаю с пакетами sp в R, и я хочу преобразовать фрейм данных в SpatialPointsDataFrame, назначая координаты с помощью функции координат.Кадр данных должен вызываться динамически.

Следуя примеру данных "meuse":

> data(meuse)
> coordinates(meuse) <- ~x+y
> meuse
class       : SpatialPointsDataFrame 
features    : 155 
extent      : 178605, 181390, 329714, 333611  (xmin, xmax, ymin, ymax)
coord. ref. : NA 
variables   : 12
names       : cadmium, copper, lead, zinc,   elev,       dist,   om, ffreq, soil, lime, landuse, dist.m 
min values  :     0.2,     14,   37,  113,  5.180, 0.00000000,  1.0,     1,    1,    0,      Aa,     10 
max values  :    18.1,    128,  654, 1839, 10.520, 0.88038900, 17.0,     3,    3,    1,       W,   1000

Это прекрасно работает.Однако попытка динамического вызова «meuse» не удалась:

> df <- "meuse"
> data(list = df)
> coordinates(get(df)) <- ~x+y
Error in coordinates(get(df)) <- ~x + y : could not find function "get<-"

Почему это не работает?И почему он пытается найти функцию "get <-"? </p>

Мой обходной путь до сих пор:

assign(df, `coordinates<-`(get(df), ~x+y))
...