-1
我想这个循环:如何调用R中的“字符”对象的列表子集?
library(demography)
fr.mort$rate$male
fr.mort$rate$female
fr.mort$rate$total
为了得到这样的:
library(demography)
for (i in c("male", "female", "total")) {
get(paste("fr.mort$rate$", i, sep = ""))
}
但doen't工作。我不明白为什么“get”在这种情况下不起作用:)
请帮助我!
get“返回指定对象的值”,因此它在全局环境中查找名为“fr.mort $ rate $ male”的对象,但找不到它们。你期望的结果是什么,你为什么要尝试这种方法?也许你正在寻找eval,解析方法? 'eval(parse(text ='fr.mort $ rate $ male'))' – rawr 2014-08-30 02:27:00
你真的不应该使用'get()'。几乎总是有一个更好的方法。 '对于(我在c(“男”,“女”,“总”)){fr [[“mort”]] [[“rate”]] [[i]]}'会做同样的事情,尽管在这种情况下,“事物”就是无关紧要。 'get()'是为了提取一个带有字符向量的变量。在这个例子中'fr.mort'是变量。 “速度”不是变量,也不是“男性”,“女性”或“总数”。正如你试图做的那样,'get'不允许做索引。它只是一个字符 - >符号查找。预计只有'get(“fr.mort”)'会起作用。 – MrFlick 2014-08-30 03:24:15
rawr,谢谢它的工作。 MrFlick,这就是我原来非简化的例子所需要的,非常感谢! – 2014-08-31 05:27:52