我正在尝试向分类器发送tall array
以运行,但是,我遇到了这个错误:
tt=fitcnb(tall(data),tall(label));
Error using tall/fitcnb (line 39)
Incompatible tall array arguments. The tall arrays must be based on the same datastore.
有人能给我一些提示如何解决这个错误吗? 感谢
答案 0 :(得分:2)
在MATLAB中使用tall
数组时,您使用的构造函数实际上仅用于原型设计 - 最终,您需要从{tall
数组中获取datastore
数组。 {1}},并且要使fitcnb
正常工作,输入必须来自相同的datastore
以确保它们兼容(错误消息在这种情况下有些误导 - tall
数组不兼容,因为它们是使用构造函数的单独调用创建的。)
话虽如此,您可以通过创建单个tall
table
并将其与fitcnb
一起使用来使此原型版本正常工作:
% Get some data for fitcnb
load fisheriris
X = meas(:,3:4);
Y = species;
% Make a single tall table
data = tall(table(X, Y));
% Run 'fitcnb'
fitcnb(data.X, data.Y)