MATLAB⼆维数组扩充为三维数组-repmat函数
在项⽬仿真中遇到了这个问题:三维数组中每⼀列减去相同的⼆维数组,该如何操作?
必须采⽤以下表达式
matlab数组赋值Rx1TimeData1= Rx1TimeData0 - repmat(mean(Rx1TimeData0,1), [NumSamplesPerChirp,1,1]);
式中Rx1TimeData1和Rx1TimeData0均为三维数组,⽽经过mean(Rx1TimeData0,1)后,该数组是1*⾏*层的三维数组,即将列表⽰出来,尽管只有1列。⽽MATLAB将这样的三维数组识别成⼆维数组,因
此Rx1TimeData0与mean(Rx1TimeData0,1)是⽆法直接相加减的,系统会报错,错误为维度不相符,不可操作。因此需要将mean(Rx1TimeData0,1)扩充为⼀个三维数组。由于项⽬中需要三维数组Rx1TimeData0中的每⼀列减去⼆维数组mean(Rx1TimeData0,1),因此需要采⽤repmat进⾏维度扩展。有关repmat的⽤法参见MATLAB的help⽂件。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论