How to frormat Table to use Previous Values for Calculations

1 vue (au cours des 30 derniers jours)
Anthony Koning
Anthony Koning le 14 Déc 2021
Does anyone know how to format a table to use the previous values of a column to calculate the a new value. For example, using a base code of
x = (0:1:9)'
y = (2.*x)
T = table (x, y)
where I would like to subtract the previous value of Y to calculate a new Y value of:
x = (0:1:9)'
y = (2.*x-y)
T = table (x, y)
Is only producing 0s for the new Y value, whereas the table that looks like this is the desired outcome. The initial values of Y (used to calculate the first Y value) is 0
x = (0:1:9)'
y = [0; 2; 2; 2; 2; 2; 2; 2; 2; 2]
T = table (x, y)

Réponses (1)

Cris LaPierre
Cris LaPierre le 14 Déc 2021
I would use the table variable T
% original table
x = (0:9)';
y = (2*x);
T = table (x, y)
T = 10×2 table
x y _ __ 0 0 1 2 2 4 3 6 4 8 5 10 6 12 7 14 8 16 9 18
% New Y values
T.y=(2*T.x-T.y)
T = 10×2 table
x y _ _ 0 0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 0
The reason the new y values are all zero is because, in the original table, y is 2*x, so your new equation is really , which equals 0. You need a different equation to get the result you want.

Catégories

En savoir plus sur Tables dans Help Center et File Exchange

Produits


Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by