原因:应该调用libsvm\matlab中的svmtrain,但是在matlab自带的工具箱中也有svmtrain这个函数,matlab会跑去调用它自带的函数。


解决办法:
1、在setpath中可以把libsvm\matlab和libsvm\windows添加进来,或者置顶
2、把matlab自带工具箱中的svmtrain改一个名字,svmtrain所在位置:your_matlab_ location\Matlab\toolbox\stats\stats
3、我遇到过这个问题两次,第一次用上述的第二种方法解决了,结果过几天又不行了,于是我在一篇关于libsvm配置的文章中看到可以去改libsvm中svmtrain的名字,于是有了如下方法:
修改libsvm\matlab中有关svmtrain的名字,如libsvmtrian,然后修改libsvm\windows中有关svmtrain的名字,和前一个一致就行。注意两个子文件夹中的名字都要改。


测试svmtrain能否使用:
在命令窗中输入以下命令:

>> [heart_scale_label, heart_scale_inst] = libsvmread('heart_scale');
>> model = libsvmtrain(heart_scale_weight, heart_scale_label, heart_scale_inst, '-c 1');
>> [predict_label, accuracy, dec_values] = libsvmpredict(heart_scale_label, heart_scale_inst, model);

如果配置成功的话,会显示一下内容:

*
optimization finished, #iter = 166
obj = -107.553365, rho = 0.449867
nSV = 131, nBSV = 103
Total nSV = 131
Accuracy = 86.2963% (233/270) (classification)

附:
我在运行matlab >> [heart_scale_label, heart_scale_inst] = libsvmread('heart_scale');时,报错说找不到heart_scale,这是因为heart_scale在上一级目录中,复制到当前目录就行了,很奇怪,不知道为啥别人都可以。

Matlab错误:Y must be a vector or a character array相关推荐

  1. Matlab中解决出现的错误使用 svmtrain (line 234) Y must be a vector or a character array.问题

    Matlab中解决出现的错误使用 svmtrain (line 234) Y must be a vector or a character array.问题 目录 解决问题 解决思路 解决方法 解决 ...

  2. 错误使用 svmtrain svmtrain has been removed. Use fitcsvm instead.Y must be a vector or a character array

    错误1 Error using svmtrain (line 230) svmtrain has been removed. Use fitcsvm instead. 错误2 Error using ...

  3. MATLAB错误使用 surf (第 71 行) X、Y、Z 和 C 不能是复数。解决办法。

    MATLAB错误使用 surf (第 71 行)X.Y.Z 和 C 不能是复数. surf(X,Y,Z) 创建一个三维曲面图,它是一个具有实色边和实色面的三维曲面.该函数将矩阵 Z 中的值绘制为由 X ...

  4. MATLAB错误:‘conv2’

    MATLAB错误 Undefined function 'conv2' for input arguments of type 'double' and attributes 'full 3d rea ...

  5. matlab串联的矩阵的维度不一致,MATLAB错误记录:错误使用 cat 串联的矩阵的维度不一致...

    MATLAB错误记录:错误使用 cat 串联的矩阵的维度不一致 今天想用matlab读取一个数据文件.用importdata读入后照例储存成了cell类型.但当我想用cell2mat将其转化为矩阵时却 ...

  6. matlab错误:Variable 'a' cannot be saved to a MAT-file whose version is older than 7.3.

    matlab错误提示: Warning: Variable 'a' cannot be saved to a MAT-file whose version is older than 7.3. To ...

  7. matlab里的scalar,scalar_scalar与vector之间的区别

    scalar与vector之间的区别 有些物理量,既要由数值大?包括有关的单位),又要由方向才能完全确定.这些量之间的运算并不遵循一般的代数法则,而遵循特殊的运算法则.这样的量叫做物理矢量. 有些物理 ...

  8. MATLAB 错误使用 instfreq TFD 应“非负”

    MATLAB 错误使用 instfreq TFD 应"非负" EMD工具箱报上面的错误,help instfreq后MATLAB自己有这个函数,不过EMD似乎使用的另外的函数导致调 ...

  9. Matlab一个错误引发的血案:??? Error using == str2num Requires string or character array input....

    Matlab总遇到一些神奇的问题,让人摸不着头脑.昨天编写程序的时候遇到一个让我十分火大的问题,也是自己的matlab基础不好吧. 先描述一下问题,再GUI界面有个listbox,Tag属性是'lis ...

最新文章

  1. MSTAR SETBOX 常用API
  2. usb-key登录windows+远程桌面
  3. 基于CSDN完成TEASOFT的MOOC编辑整理
  4. android gradle 给所有的buildFlavor 的versionName 增加一个后缀
  5. PHP反序列化漏洞总结
  6. firefox 4b7截图
  7. 高级软件工程课程第一次作业的小结
  8. C#中读取文件内容本文分步介绍了如何从文本文件
  9. sqlite3数据库使用
  10. 基于Java+SpringMvc+vue+element实现驾校管理系统详细设计
  11. Oracle中字符串转义问题总结
  12. wpf绑定 dictionary 给定关键字不再字典中_为什么要在 JavaScript 中学习函数式编程?...
  13. java内存溢出模拟_模拟实战排查堆内存溢出(java.lang.OutOfMemoryError: Java heap space)问题...
  14. J3061《信息物理融合系统网络安全指南》
  15. win10如何截屏_Win10隐藏秘技大公开
  16. csr8811蓝牙芯片porting总结
  17. 基于vtkVoxelContoursToSurfaceFilter实现勾画图像的轮廓线面重建
  18. 蚂蚁金服CEO挂帅整军亲征,美团千里奔袭支付宝大营
  19. 数据库应用+SQL优化+Git
  20. 详解编码器和解码器电路:定义,工作原理,应用,真值表

热门文章

  1. 存储引擎之必知必会 -- 检查点机制
  2. VS2008 error PRJ0002 : 错误的结果 31 (从“C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin\rc.exe”返回)。...
  3. Oracle 11g 通过创建物化视图实现不同数据库间的表数据同步
  4. 理解SharePoint中的Managed Path
  5. hdu 4358(莫队算法+dfs序列)
  6. C++ 面试知识总结
  7. php+mysql+html 之页面输入、输出
  8. nyoj-976-Youth的最大化(贪心+二分)
  9. hdu 1228-A+B
  10. 一篇写的很好的XGBoost的博客(于简书转载)