inserting values in between two successive values in an array

I have an array 10X1
-7.55
-7.62
-7.59
-7.75
-7.78
-7.69
-7.63
-7.69
-7.58
-7.95
Now, i want to insert values in between two successive values as (-7.585) in between ( -7.55 -7.62) and so on, so that my array become 19X1.

 Respuesta aceptada

This should get the job done:
data=[-7.55;-7.62;-7.59;-7.75;-7.78;-7.69;-7.63;-7.69;-7.58;-7.95];
newdata=interp1(...
1:numel(data),... create x values
data,... treat the data as y values
1:0.5:numel(data),... create the new x values to sample
'linear'); % force the use of a linear interpolation
disp(newdata)
-7.5500 -7.5850 -7.6200 -7.6050 -7.5900 -7.6700 -7.7500 -7.7650 -7.7800 -7.7350 -7.6900 -7.6600 -7.6300 -7.6600 -7.6900 -7.6350 -7.5800 -7.7650 -7.9500

3 comentarios

It is working thank you, If i want to get one more value after the 10th value, What should I do, Please help
What exactly do you mean by 'after the 10th value'? Do you want to extrapolate after the array you have? If you want that, you will have to find the pattern in your numbers.
plot(data)
I don't see any pattern. Can you predict what value should be at x=10.5?
oK. I understood, thanks for your answer.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Interpolation en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 25 de Mayo de 2021

Comentada:

el 25 de Mayo de 2021

Community Treasure Hunt

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

Start Hunting!

Translated by