Turning array values into values on an x axis

Suppose I had a double array and the values were 2,3,6 and 9.
How would I create a double array where all of the values are 1, except the 2nd, 3rd, 6th and 9th, which are 2?

2 comentarios

Daniel Shub
Daniel Shub el 1 de Mayo de 2012
You link to double seems broken.
What have you tried so far?
Matt Fig
Matt Fig el 2 de Nov. de 2012
Tom's question
Suppose I had a double array and the values were 2,3,6 and 9.
How would I create a double array where all of the values are 1, except the 2nd, 3rd, 6th and 9th, which are 2?

Iniciar sesión para comentar.

 Respuesta aceptada

Wayne King
Wayne King el 1 de Mayo de 2012
x = ones(500,1);
indices = [2 3 6 9];
x(indices) = 2;
Or
x = ones(500,1);
x(indices) = x(indices)+1;

3 comentarios

Tom
Tom el 1 de Mayo de 2012
That's great thanks.
What about if the indices is a vector (<1x4 double>) and not an array?
Daniel Shub
Daniel Shub el 1 de Mayo de 2012
Ummm, it is 1x4 in Wayne's answer. It works if you make it 4x1.
Tom
Tom el 2 de Mayo de 2012
Thanks - I got there in the end - I had to round my indices for some reason. Even though some of them had .0000 after it still wouldn't work until those had been removed.
Many thanks Wayne and Daniel.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Productos

Etiquetas

Preguntada:

Tom
el 1 de Mayo de 2012

Community Treasure Hunt

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

Start Hunting!

Translated by