trying to create a new vector from 2 vectors.
조회 수: 35 (최근 30일)
이전 댓글 표시
Hello,
I have a routine below that reads in an excel file. The vector y is created. It then computes r from a function and from that y1 is computed.
I then want to create a new vector y2. This vector will contain the first 3 elements of vector y and the last 3 elements of vector y. The elements in between will come from y1.
I am getting an error
??? Error using ==> horzcat
CAT arguments dimensions are not consistent..
but the vectors y and y1 are the same size and direction.
When I type y(1:3), y1(4:end-3), y(end-2:end) separately into the command line I get the elements that I am expecting and when you sum their lengths together it equals the length of y and y1.
Would anybody know what is going wrong?
Thank you
sch_cycle=xlsread('C:\Autonomie practice\RW.xls','Input_data');
nrows = size(sch_cycle,1)-1;
x = sch_cycle(:,1);
y = sch_cycle(:,2);
h=3;
N= size(sch_cycle,1);
r=ksr(x,y,h,N)
y1=r.f';
y2 = [y(1:3) y1(4:end-3) y(end-2:end)];
댓글 수: 0
채택된 답변
추가 답변 (2개)
Jonathan Sullivan
2012년 3월 23일
You'll want to check the size of them. Sounds like one or more of your vectors are column vectors [Nx1]. You want to make sure they are all row vectors {1xN] if you are going to concatenate them horizontally. Either that, or use the vertical concatenation syntax as follows.
[a; b; c]
댓글 수: 0
Wayne King
2012년 3월 23일
y is definitely a column vector, is y1 a row vector?
iscolumn(y)
isrow(y1)
If you do
y = y';
That should fix the problem.
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Logical에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!