How can I find the difference between adjacent elements while ignoring the first value?

I have the following column vector.
data = randperm(100,15)';
Is there a way of using the "diff" function to find the difference between adjacent elements while ignoring the first one? In other words, I would like the calculation to start with elements 2 and 3 then 4 and 5 etc.
Appreciate the help! Thanks.

 Respuesta aceptada

diff(data(2:end))

5 comentarios

:) 🙏
As easy as that! Thank you. Safe to say I'm still very much learning!
Sorry, just a quick follow-up question to this, @Stephen Cobeldick. If my vector has 14 elements, is there a way of returning only 7 difference values instead of 13? I mean to say I only want to find the difference between element 1 and 2 then skip ahead to elements 3 and 4 (skipping the difference between elements 2 and 3). Hope that makes sense. Again, really appreciate the feedback.
Where vec is your vector of 14 elements:
out = vec(2:2:end)-vec(1:2:end)

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Data Import and Analysis en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 15 de Feb. de 2021

Comentada:

el 15 de Feb. de 2021

Community Treasure Hunt

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

Start Hunting!

Translated by