要把一个
A=4
5
6
7
8
变成 b=1 2
3 4
5 6
7 8
如果数字很多,不止这8个。。。该怎么用reshape?
[r,c]=size (a)
reshape(a,r/2,2)
为何出error啊。。。。
抱歉。。。各种菜鸟。。求详细解答!
Error using ==> reshape
Size arguments must be real integers.
Error in ==> reshape at 11
b = reshape(a,6,r/6)'
哦。。我的r是4999.。。能否在不是6的倍数的时候,最后补上几个0?
这又该如何编写呢。。。有劳大神。。。。
这个,你得先给A补上几个0。
比如
A=[1:4999]';
r=size(A,1);
x = 6-mod(r,6);
A(r+1:r+x)=0;
b = reshape(A,6,(r+x)/6);
这样就好了。
不好意思 我又来追问了!! 我会加分的!!
tangram_guid_1359781738334? Error using ==> reshape
To RESHAPE the number of elements must not
change.
Error in ==> reshape at 13
b = reshape(wind1,6,(r+x)/6);
为何又error了。。。呜呜
你的error是出在一个程序内部的某一步吧,能把代码贴出来么?
追问clc;
close all;
file_in = 'daily_average_wind_speed.xls';
file_out = '6h_average_wind_speed.xls';
wind1=a(:,2);
r = size(wind1,1);
x = 6-mod(r,6);
A(r+1:r+x)=0;
b = reshape(wind1,6,(r+x)/6);
有劳了!!