Finding difference between two rows

6 views (last 30 days)
Karina
Karina on 25 Apr 2018
Commented: Dooyoung Kim on 28 Jun 2018
I have a 6696502 x 2 table which shows energy in MW for a period of time. I want to add a column which is the difference in energy for each time period so column 3 row 2 shows the difference in values for row 2 and 1 in column 2.
I have the following code, however it is very slow to compute given my table is so large. if true
if true
% code
for n = 1:countReg
if n == 1
diffReg = 0;
else
diffReg = RegCol(n) - RegCol(n-1);
end
newRegTable.ChangeReg(n) = diffReg;
end
end
Is there any way to do this so it does not take so much time?

Answers (1)

Guillaume
Guillaume on 25 Apr 2018
yourtable.ChangeReg = [0; diff(yourtable.NameOfFirstColumn)]

Categories

Find more on Tables in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!