How to Filter Rows of Cell Array By Date Range
6 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Simplied my problem so it's easier to solve. I have a 4x3 array "a" and want to remove rows not within a specified date range. I would like to do this without a loop that would slow down my code. Any suggestions matlab wizards out there?
%Date Range
MinDate = datetime('14-Jul-2024');
MaxDate = datetime('17-July-2024');
%Cell Array
a = cell(4,3);
random = [1 1
2 1
3 3
4 5];
dates = datetime({'10-Jul-2024'
'15-Jul-2024'
'20-Jul-2024'
'16-Jul-2024'});
a(:,3) = num2cell(dates);
a(:,1:2) = num2cell(random);
%How do I filter a by deleting rows not within Date Range? i.e. delete rows 1 & 3 based on the value of a
0 comentarios
Respuestas (1)
the cyclist
el 30 de Jul. de 2024
Here is one way:
%Date Range
MinDate = datetime('14-Jul-2024');
MaxDate = datetime('17-July-2024');
%Cell Array
a = cell(4,3);
random = [1 1
2 1
3 3
4 5];
dates = datetime({'10-Jul-2024'
'15-Jul-2024'
'20-Jul-2024'
'16-Jul-2024'});
a(:,3) = num2cell(dates);
a(:,1:2) = num2cell(random);
% Filter
a_filtered = a(isbetween([a{:,3}],MinDate,MaxDate),:)
0 comentarios
Ver también
Categorías
Más información sobre Logical en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!