R通过坐标函数(sp程序包)中的变量名称调用数据框

时间:2018-12-18 15:04:24

标签: r sp

我花了一段时间试图了解为什么它不起作用,但是我无法弄清楚。 我正在使用R中的sp包,我想将数据帧转换为使用坐标函数分配坐标的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 <-”函数?

到目前为止,我的解决方法是:

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

0 个答案:

没有答案