Phi <- as.matrix(cbind(1, train.data)) # add a column of 1 as phi_0
train.len <- 75
eta <- 0.01 # Learning rate
epsilon <- 0.001 #
tau.max <- 75 # Maximum number of iterations
T <- ifelse(train.label == c0, eval(parse(text=c0)),eval(parse(text=c1))) labels
W <- matrix(,nrow=tau.max, ncol=ncol(Phi)) # Empty Weight vector
W[1,] <- runif(ncol(Phi)) # Random initial values for weight vector
error.trace <- matrix(0,nrow=tau.max, ncol=1) # Placeholder for errors
error.trace[1] <- sum((Phi%*%W[1,])*T<0)/train.len*100
train.data
樣子:矩陣錯誤:要求中的R數字
x1 x2 x3 x4 y
5.1 3.5 1.4 0.2 C1
4.7 3.2 1.3 0.2 C1
35.0 3.6 1.4 0.2 C1
的問題在最後一行發生。我查了一些其他帖子(Matrix expression causes error "requires numeric/complex matrix/vector arguments"?)。他們說要確保數據是矩陣格式,我也檢查他們都是數字(Phi
和W
)。
我得到的錯誤是
Error in Phi %*% W[1, ] : requires numeric/complex matrix/vector arguments
矩陣乘法期間'train.data'中的'y'列會發生什麼? – Carl