Info

Diese Frage ist geschlossen. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.

How to eliminate the rows of data ?

2 Ansichten (letzte 30 Tage)
Andre
Andre am 12 Aug. 2014
Geschlossen: MATLAB Answer Bot am 20 Aug. 2021
I have a large data-set.The data in cell. A sample of this data-set is as follows:
I want to eliminate the number of rows of data that is less than 3 lines in a set (shown in red box). Can I have a simple code to do this?
  1 Kommentar
Christopher Berry
Christopher Berry am 12 Aug. 2014
Bearbeitet: Christopher Berry am 14 Aug. 2014
How is your data stored? double? cell? table? What size is it?
chances are, all you need to do is
rows = [1 4 10];
data(rows,:) = [];
This will remove rows 1 4 and 10 from a 2D matrix of doubles

Antworten (2)

Joakim Magnusson
Joakim Magnusson am 12 Aug. 2014
Is your data i a matrix? I'm not sure what you want to remove, but for example if you want to remove the first 5 rows, i think you could do like this:
yourMatrix(1:5, :) = [];
But i guess you want to recognize some kind of pattern and remove the rows with the specific pattern?

Ben11
Ben11 am 12 Aug. 2014
If your data is stored in a cell array you could use the following:
% Identify the rows (I) in which there are empty elements
[I,J] = ind2sub(size(YourArray),find(cellfun(@(x) isempty(x),YourArray)))
% Find the unique entries
RowsToDelete = unique(I)
% Delete them
YourArray(RowsToDelete,:) = [];

Diese Frage ist geschlossen.

Community Treasure Hunt

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

Start Hunting!

Translated by