Matlab遇到赋值具有的非单一 rhs 维度多于非单一下标数的问题

Matlab遇到赋值具有的非单一 rhs 维度多于非单一下标数的问题
今天在写程序的时候遇到了‘赋值具有的非单一 rhs 维度多于非单一下标数’这个问题,我并没有解决这个问题,但是也可以运行了,在这里和大家分享一下。
我的程序是这样:
for subj=1:subjnumber
Signal =data{subj}’;
SignalInfo = nbt_Info; %this initializes an Info Object
SignalInfo.converted_sample_frequency = 1000; %Sets the frequency to 250Hz.
AmplitudeEnvelope = nbt_GetAmplitudeEnvelope(Signal, SignalInfo, 8, 13, 2/8);
[DFAobject,DFA_exp] = nbt_doDFA(AmplitudeEnvelope, SignalInfo, [1 15], [0.8 25], 0.5, 1, 1, []);
DFA_y(:,subj) = DFAobject.DFA_y;
DFA_x(:,subj) = DFAobject.DFA_x’;
DFA—exp(:,subj) =DFAobject.MarkerValues;
end
当我运行程序的时候, DFA—exp(:,subj) =DFAobject.MarkerValues;,出现了赋值具有的非单一 rhs 维度多于非单一下标数这个问题,其中DFAobject.MarkerValues是一个64*1 double 的数据。
为了解决这个问题:
第一尝试的是,将 DFA—exp(:,subj) =DFAobject.MarkerValues;改成DFA—exp(1:64,subj) =DFAobject.MarkerValues;这个时候可以正常运行了,但是每一次循环之后会将上一次循环生成的那列数据的值变为0.没有找到原因
第二尝试是,将DFA—exp(:,subj) =DFAobject.MarkerValues;改成MarkerValues(:,subj) =DFAobject.MarkerValues;此时程序能正常运行,且没有报错也没有出现第一次尝试出现的问题。
到这我的问题算是解决了,如果有大神知道原因,请不吝指教。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值