我正在学习交叉验证方法。 在下面的行中,输入和查询都是数据框。
my.knn <- get.knnx(input,query,k=2)
nn.index <- my.knn$nn.index
第二行是什么意思? nn.index
会是什么?
答案 0 :(得分:0)
my.knn
是一个变量列表。因此nn.index
将该值从列表中删除,因此您可以将其作为单个变量进行处理。
从列表中获取元素的示例
stats <- list("mean" = 10, "data" = c(0, 10 ,20))
#just get the average out
my.average <- stats$mean
因此,列表可以具有不同类型的测试结果,并且可以混合使用变量类型(整数,字符串,向量)。 $语法将列表中的一个变量转换为单个变量。
如果您在提示符下键入my.knn
,则会看到其内容标有$的部分。这有助于查看列表中的内容。
在示例中:
> stats
$mean
[1] 10
$data
[1] 0 10 20
功能上的规格
我查看了get.knnx
功能说明,假设您使用的是FNN包,请http://www.inside-r.org/packages/cran/fnn/docs/get.knn:
输出列表包含:
nn.index
最近邻居的n x k矩阵。
nn.dist
最近邻欧几里德距离的n x k矩阵。
所以你可以看到你的函数输出列表有这两个变量 - 最近邻居的索引,第二个是距离。
相信这有帮助。