Finding if the current data value is greater than the previous value

I have formed a table of 1 column and many rows and I am trying to findout if the value in the current row is greater than the previous row but I am not sure where to start. I know I need to use for loops but I don't know how to use them here. Any ideas?
A= readtable ("GDF.xlsx");
for n=A
if...
Any help would be appreciated.

2 commentaires

How would I create a link to the excel file so you can see it? The excel file is simply one column of numbers by the way if you need that information.
If it's simply one column of numbers, you can use the code from below.
If this doesn't work, use the INSERT > Attachments button from the menu bar to include the file.

Connectez-vous pour commenter.

 Réponse acceptée

Torsten
Torsten le 20 Oct 2025
Modifié(e) : Torsten le 20 Oct 2025
It would help if you include the GDF-file.
Without further information, I'd suggest
T = readtable ("GDF.xlsx");
A = table2array(T);
DA = all(diff(A) > 0)
If DA = 0, there are rows where the current row is smaller or equal than the previous row.
If DA = 1, the column is strictly increasing in value.

6 commentaires

Nathan
Nathan le 20 Oct 2025
Modifié(e) : Nathan le 20 Oct 2025
This is helpful but I am looking for a way to find when the data is decreasing rather than increasing. Anyway to change this code to find if the columns are decreasing in value? Thanks for the help
T = readtable ("GDF.xlsx");
A = table2array(T);
DA = all(diff(A) < 0)
0
Is this the result that is meant to appear?
The result means that there are positions in your array such that the value in the current row is greater or equal than the value in the previous row. Do you also need the numbers of these rows ?
A = [5 4 3];
DA = all(diff(A) < 0)
DA = logical
1
A = [5 6 2];
DA = all(diff(A) < 0)
DA = logical
0
I think you already answered my question I was just confused on what the code was showing and whether the data was increasing or not. Thanks for your help!
Just to clarify again:
DA = all(diff(A) < 0)
gives logical 1 if the column is strictly decreasing throughout and gives logical 0 if there are (one or more) positions in the column where A(i+1) >= A(i).

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Data Type Identification dans Centre d'aide et File Exchange

Produits

Version

R2025a

Community Treasure Hunt

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

Start Hunting!

Translated by