我在包“e1071”中使用了SVM功能,
第一个问题是当我尝试预测行数小于我训练的行数时,它会给我以下错误:
td = wholeData[1:10000,]
model <- svm(Type~.,data = td,type="C-classification")
x =wholeData[1:5000,]
p=predict(model,x)
newdata中的错误[,对象$ scaled,drop = FALSE] :(下标)逻辑下标太长
第二个问题是,当我尝试使用大量行时,它会给出以下消息:“错误:无法分配大小为6.6 Gb的向量”我不知道要克服此问题 .
td=wholeData[1:100000,]
model1=svm(Type~.,data = td)
错误:无法分配大小为6.6 Gb的向量另外:警告消息:1:在model.matrix.default(Terms,m):达到5849Mb的总分配:请参阅help(memory.size)2:在model.matrix中 . default(Terms,m):达到5849Mb的总分配:请参阅help(memory.size)3:在model.matrix.default(Terms,m):达到5849Mb的总分配:请参阅help(memory.size)4:In model.matrix.default(Terms,m):达到5849Mb的总分配:请参阅help(memory.size)
数据结构如下
str(wholeData)
'data.frame': 550116 obs. of 8 variables:
$ Text : chr "IL-2" "gene" "expression" "and" ...
$ wLength: int 4 4 10 3 8 1 10 7 4 8 ...
$ Cap : int 1 0 0 0 1 1 0 0 1 0 ...
$ Digit : int 1 0 0 0 0 0 0 0 1 0 ...
$ POS : int 11 20 20 9 21 21 20 14 11 40 ...
$ Type : Factor w/ 11 levels "1","2","3","4",..: 3 8 11 11 4 9 11 11 4 11 ...
$ idf : num 3.2 1.7 1.53 1.01 2.96 2.13 1.73 2.63 4.89 3.94 ...
$ isword : int 0 1 1 1 0 1 1 1 0 1 ...