How to add consecutive numbers from a column in a .txt file?

I am trying to add consecutive elements in a column and then print the new column. For example the column:
[1 1 8 2 3 1]
Would print:
[2 9 10 5 4]
I already have:
fid = fopen('HW1.txt', 'r');
data = textscan(fid, '%d%f%s%s%s%d%s', 'MultipleDelimsAsOne',true, 'HeaderLines',1);
fclose(fid);
jumps = sum(abs(diff(data{1})>1));
timeD = diff(data{2});
opts = detectImportOptions('HW1.txt');
preview('HW1.txt',opts)
[Var1,Var2,Var3,Var4] = readvars('HW1');
whos Var1 Var2 Var3 Var4
-----------------------------------
Var 4 is a column of 200 numbers that I would like to convert into a column where each number is the added value of the columns adjacent pair.

 Accepted Answer

Just use movsum
a = [1 1 8 2 3 1];
b = movsum(a,2); % I should apologize for not adding 2
b = b(2:end)
The answer
b =
2 9 10 5 4

5 Comments

Var4 is a column, it does not matter you use movsum
Var4 is the vector (column) im using:
So my code is:
Cpsum = movsum(Var4);
Cpsum = Cpsum(2:end);
So i tried this but I am getting an error:
"Error using movsum
Not enough input arguments.
Error in Untitled4 (line 2)
Cpsum = movsum(Cp);"
I am sorry for not adding 2 in the input variable of function movsum
a = [1 1 8 2 3 1]';
b = movsum(a,2); % I should apologize for not adding 2
b = b(2:end)
The result
b =
2
9
10
5
4

Sign in to comment.

More Answers (0)

Categories

Asked:

on 2 Sep 2021

Commented:

on 2 Sep 2021

Community Treasure Hunt

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

Start Hunting!