0
scorekm <- function(km, x1,x2,x3,x4) {
data<-matrix(c(x1,x2,x3,x4),nrow=1)
k <- nrow(km$centers)
n <- nrow(data)
d <- as.matrix(dist(rbind(km$centers, data)))[-(1:k),1:k]
d <- matrix(d,nrow=1)
out <- apply(d, 1, which.min)
return(out)
}
這是我的原始功能。現在有幾個參數(不只是4個,也許8個,12個......),每4個作爲一個單位。我應該使用for循環嗎?在for循環中,我怎樣才能達到參數?我怎麼知道有多少?參數用於R
scorekm <- function(km,x...){}
函數應該是這樣的。
km<-kmeans(iris,3)
scorekm<-
function(km, x,...)
{
result=NULL
for(i in 1:nargs()-1)
{
data<-matrix(c(args[[i+1]],args[[i+2]],args[[i+3]],args[[i+4]]),nrow=1)
k <- nrow(km$centers)
d <- as.matrix(dist(rbind(km$centers, data)))[-(1:k),1:k]
d <- matrix(d,nrow=1)
out <- apply(d, 1, which.min)
result<-cbind(out,result)
i<-i+4
}
return(result)}
scorekm < - 功能(千米,X,......) {}這應該是這樣的。 –
對不起,我已經保存了我的更改。 –
你的問題仍然不清楚。你想用x1,x2,x3等來做什麼?不管有多少個,你想不想製作一個矩陣? – Thomas