我想通过引用数据框列名并将它们插入到一个公式中来使代码段更加灵活,而不是直接调用名称。下面的示例工作,虽然要直接插入字段名称:如何在方程R中插入数据帧的列名?
require(e1071)
class = c(0.25, 0.34, 0.55)
field1 = c(23, 33, 34)
field2 = c(44, 55, 32)
df = data.frame(class, field1, field2)
mysvm = svm(class ~ field1 + field2, data = df)
下面的例子不工作,我不知道为什么:
require(e1071)
class = c(0.25, 0.34, 0.55)
field1 = c(23, 33, 34)
field2 = c(44, 55, 32)
df = data.frame(class, field1, field2)
name1 = names(df)[2]
name2 = names(df)[3]
mysvm = svm(class ~ name1 + name2, data = df)
如何可以引用数据框中的第2列和第3列并将它们正确地插入到等式中?
如何'fun2New'任何不同于我的函数'foo'? – 2014-09-21 14:57:38
@Richard Scriven我用'fun2New'作为'fun3'的参数来改变'Call'语句中的公式。我应该把这个函数放在'fun3'里面。但是,不知何故没有得到它的正确。无论如何,OP似乎不希望这种功能。所以,我没有为此工作。 – akrun 2014-09-21 15:45:29
但是你是否从理查德的答案中复制了它,但没有归属? – 2014-09-21 16:05:22