【发布时间】:2013-05-23 06:12:54
【问题描述】:
所以现在写,我正在用 R 编写一个函数,它查看一组表示为矩阵的向量和两个测试向量,然后检查原始集合中的每个向量,并确定它是两个测试向量中的哪一个更接近(或两者都不),然后将三个数据集作为矩阵输出(向量更接近第一个测试,第二个测试,两者都不)。我写了另一个函数,它只查看三个向量,然后给出第一个向量更接近哪个向量作为输出(这是更接近的函数)。它及其结果被用于新函数中。
这是更大功能的代码:
vectorwork <- function(mat,test1,test2){
closer1 = ()
closer2 = ()
neither = ()
y = dim(mat)[2]
for(i in 1:(dim(mat)[1]){
if(closer(mat[i,],test1,test2)==1){
closer1[length(closer1)+1] = mat[i,]
}
else if(closer(mat[i,],test1,test2)==2){
closer2[length(closer2)+1] = mat[i,]
}
else{
neither[length(neither)+1] = mat[i,]
}
}
close1 = matrix(closer1, (length(closer1)/y), y)
close2 = matrix(closer2, (length(closer2)/y), y)
neith = matrix(neither, (length(neither)/y), y)
print(close1,close2,neith)
}
我在整个代码中不断收到括号错误。由于我是 R 新手,所以我不确定我到底哪里出错了。任何帮助将不胜感激!
【问题讨论】:
标签: r vector matrix parentheses