How can I create a new vector using the if function?

1 visualización (últimos 30 días)
G
G el 4 de Jun. de 2016
Comentada: G el 4 de Jun. de 2016
Hi everyone,
I have the following problem:
I have a vector (V) that range from 0 to 60 and I would like to group these data as following:
* If the value of (V) is between or equal to 0 and 5 , give me 5
* If the value of (V) is between or equal to 6 and 10 , give me 10
...
* If the value of (V) is between or equal to 56 and 60 , give me 60
The vector V contains 60 data, and the new vector should contain also 60 data
Thank you in advance

Respuesta aceptada

John D'Errico
John D'Errico el 4 de Jun. de 2016
So you want to round up to the nearest multiple of 5.
Divide by 5, use ceil, then multiply by 5. The only catch is that for 0, this will result in 0. So catch that possibility too using max.
Vhat = 5*ceil(max(1,V/5));
Learn to use tools that apply to entire arrays and vectors in MATLAB.

Más respuestas (1)

the cyclist
the cyclist el 4 de Jun. de 2016
ceil(V/5) * 5

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by