Subscripted assignment dimension mismatch
显示 更早的评论
clear all
cd('C:\Users\User\Desktop\smooth'),
listafile_rh=ls('C:\Users\User\Desktop\smooth');
qwe_rh=cellstr(listafile_rh)
ooo_rh=3
for uu_rh=1:4
fileathand_rh=qwe_rh(ooo_rh)
eval(['surface_rh{uu_rh}= spm_vol(''' cell2mat(fileathand_rh) ''');'])
outputsubject_rh(:,uu_rh)= spm_read_vols(surface_rh{uu_rh})
t= outputsubject_rh(:,uu_rh(:))
ooo_rh=ooo_rh+1
end
I get this error: Subscripted assignment dimension mismatch
Any Tips?
5 个评论
Geoff Hayes
2016-12-6
Andrea - which line of code generates the error? Please copy and paste the full error message. Note that we don't have access to your file nor necessarily have the functions that you are using (spm_vol, spm_read_vols, etc.) so can't step through the code.
Also, try and avoid using eval There is usually an alternative to building commands dynamically...
Andrea Vatulas
2016-12-6
编辑:Andrea Vatulas
2016-12-6
Jan
2016-12-6
@Andrea: Do not just try to avoid eval but avoid it strictly. It causes much more troubles than it solves.
Geoff Hayes
2016-12-6
Andrea - you will need to provide some context surrounding your code as it isn't clear how it is to be used (it doesn't help that the variable names are confusing). How are you using this code? Are you using Simulink? What is surface_rh?
Andrea Vatulas
2016-12-6
回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!