vertcat while filtering data

3 Ansichten (letzte 30 Tage)
Caleb Lindhorst
Caleb Lindhorst am 23 Mai 2018
Kommentiert: Caleb Lindhorst am 24 Mai 2018
Hello all,
I am having difficulties getting to add to a matrix. I created an empty matrix named "bob". I have a 6 column matrix called "RPLIDARdata" that I want to pull the entire row out if a condition is met and put it in "bob". I want it to concatenate into the new matrix. "r" is the variable that I want to check and "i" is the iteration number in a for loop. The code I have tried goes as follows:
if r(i) > 1
RPLIDAR(i,:) = bob(i,:);
end
(Yes, I know that my first code wouldn't have worked.) it throws this error
%Index exceeds matrix dimensions.
Error in fcmclusteringandoccupancymap (line 28)
RPLIDAR(i,:) = bob(i,:);
I discovered vertcat so I entered this code in
vertcat(RPLIDARdata(i,:),bob)
I get this error
Error using vertcat
Dimensions of matrices being concatenated are not consistent.
Error in fcmclusteringandoccupancymap (line 28)
vertcat(RPLIDARdata(i,:),bob);
Can anyone please help me with this? I would like for this to concatenate
  3 Kommentare
Jan
Jan am 24 Mai 2018
Bearbeitet: Jan am 24 Mai 2018
This looks like an iterative growing array. This is very inefficient. What is "i"? Did you read my answer? I still assume that this is easier - without a loop:
bob = data(r > 1, :)
Caleb Lindhorst
Caleb Lindhorst am 24 Mai 2018
Sorry, Jan I didn't read it because I thought I got it figured out. I did but not as efficiently as what you have. Thank you for your help.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Jan
Jan am 23 Mai 2018
Bearbeitet: Jan am 23 Mai 2018
Do you mean:
bob = RPLIDAR(r > 1, :)
? If not, please post a small example of the inputs and the wanted output.

Weitere Antworten (0)

Produkte


Version

R2017a

Community Treasure Hunt

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

Start Hunting!

Translated by