Я использую штрафованный пакет LDA в r для выполнения LDA с LASSO.Это дает эту ошибку.
Ошибка в лямбда * сумме (abs (v)): не числовой аргумент для бинарного оператора
Я использую набор данных sampbase изРепозиторий машинного обучения UCI (я добавил заголовки к столбцам и, где необходимо, возвращаю столбцы с интервалом [0,1].)
library(penalizedLDA)
library(caTools)
data = read.csv("spambase.csv",header = TRUE)
new_data = data/100
new_data[,c(55,56,57,58)] = data[,c(55,56,57,58)]
new_data[,58][new_data[,58] == 0] = 2
new_data[,58]= factor(new_data[,58])
# Splitting dataset into Training set and Test set
#set.seed(seeds)
library(caTools)
split = sample.split(new_data$factor, SplitRatio = 0.7)
training_set = subset(new_data, split == TRUE)
test_set = subset(new_data, split == FALSE)
#scale data
training_set[-58] = scale(training_set[,-58])
test_set[-58] = scale(test_set[,-58])
#Sparse linear discriminant Analysis
classifier = PenalizedLDA( x = training_set[,-58], y =training_set[,58],K = 1,lambda = "standard")