Dimensions of arrays being concatenated are not consistent.

2 views (last 30 days)
I have following script. there are 4 txt files where each have diferent array size in columns. how can i read all the fix the error i get
Thanks

Answers (1)

KSSV
KSSV on 14 Jul 2022
Edited: KSSV on 14 Jul 2022
This line:
TimeM = [AA(:,1) BB(:,1) CC(:,1) DD(:,1)] ;
will throw error. Note that BB, CC and DD are of size 20x2 and AA(:,1) is of size 24x2. So you cannot join/ concatenate four columns of size 24x1 and 20x1. Obviously, it will trhow error. So what you can do is:
data = [AA ; BB; CC; DD] ;
TimeM = data(:,1) ;
VoltM = data(:,2) ;
plot(TimeM,VoltM)
  2 Comments
Matin jaberi
Matin jaberi on 14 Jul 2022
is there a way to get join them in seperate column? i dont wan to get a column of 84x1
KSSV
KSSV on 14 Jul 2022
Yes, you can. You can interpolate AA from 24x2 to 20x2 or interpolate BB, CC, DD from 20x2 to 24x2. I have shown below converting AA from 24x2 to 20x2. You need to read about interp1.
x = AA(:,1) ;
y = AA(:,2) ;
xi = linspace(min(x),max(x),20)' ;
yi = interp1(x,y,xi) ;
AA = xi yi] ;
TimeM = [AA(:,1) BB(:,1) CC(:,1) DD(:,1)] ;

Sign in to comment.

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!