Undefined function 'sum' for input arguments of type 'cell'.
Show older comments
Undefined function 'sum' for input arguments of type 'cell'.
Error in mean (line 116)
y = sum(x, dim, flag)/size(x,dim);
Error in ccaFuse (line 69)
meanX = mean(trainX);
Error in CCA_feature_fusion (line 19)
[trainZ,testZ] = ccaFuse(trainX, trainY, testX, testY, 'concat');
%% program
clc;
clear all;
load('db4.mat');
load('db6.mat');
load('db3.mat');
load('db5.mat');
trainX =reduced_traindata;
trainY = reduced_traindata;
testX = reduced_testdata;
testY = reduced_testdata;
[trainZ,testZ] = ccaFuse(trainX, trainY, testX, testY, 'concat');
3 Comments
dpb
on 29 Feb 2020
Didn't show us the pertinent code where the error actually is, but the message is clear. Apparently your variable trainX is a cell; and mean can't take the mean of the cell but has to have the content of the cell. Dereference the cell with "the curlies" {}.
W/o downloading the files don't know what is actually in the cell, but if is just a double vector, use
meanX = mean(trainX{:});
or, instead convert the cells to double in the calling code first:
trainX=cell2mat(reduced_traindata);
trainY=cell2mat(reduced_traindata);
testX=cell2mat(reduced_testdata);
testY=cell2mat(reduced_testdata);
before calling ccaFuse
Balaji M. Sontakke
on 1 Mar 2020
Balaji M. Sontakke
on 1 Mar 2020
Answers (0)
Categories
Find more on Linear Prediction in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!