〜是什么意思。在R?

时间:2017-07-31 07:04:18

标签: r knn

我想理解R中~.的含义。这是kknn函数的一个例子:

library(kknn)

data(iris)
m <- dim(iris)[1]
val <- sample(1:m, size = round(m/3), replace = FALSE, prob = rep(1/m, m)) 
iris.learn <- iris[-val,]
iris.valid <- iris[val,]
iris.kknn <- kknn(Species~., iris.learn, iris.valid, distance = 1, kernel = "triangular")
summary(iris.kknn)
fit <- fitted(iris.kknn)
table(iris.valid$Species, fit)

它包含在上面的kknn函数中,就在物种旁边。

谢谢!

2 个答案:

答案 0 :(得分:2)

这里〜是一个分隔符,和。代表所有其他属性。 在这里,你的意思是,你必须根据所有其他属性[。]

预测Species~ [separator]

答案 1 :(得分:2)

正如您所见here,  你正在创建一个公式对象。 documentation公式表明:

  

有两种特殊的解释。在公式中。通常的一个   是在模型拟合函数和数据参数的上下文中   表示“公式中没有其他列的所有列”

因此,在您的情况下,您正在创建一个模型,该模型使用除了&#39; Species&#39;之外的所有其他变量。作为预测物种的预测因子。