首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Kernlab:缺少真/假需要的值?

Kernlab:缺少真/假需要的值?
EN

Stack Overflow用户
提问于 2021-08-12 07:38:32
回答 1查看 165关注 0票数 0

我希望使用来自ksvm库的kernlab函数来执行示例分类。

代码语言:javascript
运行
复制
library(kernlab)

# PCA analysis on the first 3 component vectors
pca       <- prcomp(t(top.ranked.genes))
dat.loadings <- pca$x[, 1:3] 

# Sample classification

svp <- ksvm(dat.loadings, label, type="C-svc", scaled=T, kernel="rbfdot", kpar="automatic", prob.model=F, class.weights=NULL, fit=T, shrinking=T)

错误在if ((type(ret) ==“C”区) == "nu-svc“区(Ret)类型(Ret) ==:除真/假需要时缺少值:警告消息: In .local(x,.):NAs通过胁迫引入

代码语言:javascript
运行
复制
    > dput(top.ranked.genes[1:3,1:3])
    structure(c(4120.8, 1073.2, 1434.3, 3785.7, 1305.3, 1550.5, 3326.5, 
    1163.6, 1017.7), .Dim = c(3L, 3L), .Dimnames = list(c("221918_at", 
    "201554_x_at", "214722_at"), c("NB_GSM97800", "NB_GSM97803", 
    "NB_GSM97804")))

    

> dput(dat.loadings[1:3,1:3])
    structure(c(-158664.494929915, -148977.612734589, -163264.320664849, 
    -3583.353411796, -14921.765919203, -20224.318452977, 61652.7194473044, 
    18971.6967789661, 27273.153856793), .Dim = c(3L, 3L), .Dimnames = list(
        c("NB_GSM97800", "NB_GSM97803", "NB_GSM97804"), c("PC1", 
        "PC2", "PC3")))
EN

回答 1

Stack Overflow用户

发布于 2021-08-12 08:05:12

似乎label不是分类所需的factor。来自ksvm的文档

y可以是一个因子(用于分类任务),也可以是一个数字向量(用于回归)。..。根据y是否是一个因素,类型的默认设置是C-svc还是eps-svr

试试label <- as.factor(label)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68753405

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档