【问题标题】:"Training must be numeric" error while using fitNaiveBayes in matlab在 matlab 中使用 fitNaiveBayes 时出现“训练必须是数字”错误
【发布时间】:2016-09-28 14:01:06
【问题描述】:

我正在使用来自机器学习 UCI 存储库的 Spambase dataset 在 matlab 中使用函数 fitNaiveBayes 进行朴素贝叶斯分类。但是,它给了我错误:

Error using NaiveBayes.fit (line 11)
TRAINING must be numeric.

Error in fitNaiveBayes (line 120)
model = NaiveBayes.fit(training, group,varargin{:});

Error in Q1NaiveBayes (line 22)
Mdl = fitNaiveBayes(x_tr,y_tr);

谁能帮我理解可能出了什么问题?数据集似乎是数字的(即使它确实有相当大的零值频率)

【问题讨论】:

  • 您调用的具体函数是什么?你在传递什么?我会先检查你传入的所有东西都是双类的。例如。 class(training) 等...返回双倍。听起来有些东西不是应该的双类。
  • @MatthewGunn 感谢您的评论,我才意识到我正在传递一张桌子!谢谢!

标签: matlab


【解决方案1】:

您的数据集必须是数字的,例如 UCI 心脏病数据集。 See here (UCI heart disease data set)

【讨论】:

    猜你喜欢
    • 2021-10-14
    • 2016-07-13
    • 2022-07-31
    • 1970-01-01
    • 2015-06-12
    • 2011-08-14
    • 1970-01-01
    • 1970-01-01
    • 2018-12-26
    相关资源
    最近更新 更多