我已将一系列 SpatialPolygonsDataFrames 加载到我的工作区中。每个命名对象都有一个"_adm0"
, "_adm1"
, or "_adm2"
附有国家缩写。对于德国来说,这看起来像"DEU_adm0"
, "DEU_adm1"
, and "DEU_adm2"
.
我试图将所有“_adm0”数据帧收集到一个列表中,然后可以由 ldply 和 fortify 对其进行操作。我可以这样做,
mylist <- list(DEU_adm0, FRA_adm0, RUS_adm0, etc...)
我在其中写出了我想要包含在列表中的所有国家/地区。
但是,我如何获取所有"_adm0"
按模式的数据框?
我已经从下面的代码开始,但它没有给我所需的结果
adm0list <- ls()[str_detect(ls(), "_adm0")]
mylist <- sapply(adm0list, function(x) get(x))
或者,
mylist <- mget(adm0list, .GlobalEnv)
我确实得到了一个对象列表sapply
方法,并使用mget()
,但我不明白为什么这些列表与使用不同list()
直接使用对象名称。我怀疑这个问题的答案会告诉我原因ldply
+ fortify
与list()
方法,但不是其他两种。