我尝试在点云中应用SVD线性回归。我对点集的表示是一个有两个列的矩阵,其中第一列是' x'第二个是' y。所以,我得到了这个情节:
myplot http://oi65.tinypic.com/msoyl5.jpg
如何将SVD线性回归应用于我的点集功能? 我试过这个:
Regress_Lin<-function(data,label){
#Calculating pseudomatrix of data
data<-cbind(data,rep(1,nrow(data)))
data.svd <- svd(data)
ds <- diag(1/data.svd$d)
u <- data.svd$u
v <- data.svd$v
us <- as.matrix(u)
vs <- as.matrix(v)
#Calculating abline coefficients y=mx+b
weights<-(vs%*%solve(ds)%*%t(u))%*%label
m <- -(weights[1,1]/weights[2,1])
b <- -(weights[3,1]/weights[2,1])
c(m,b)
}
它没有用。