How to delete elements on specific indices?

I was able to get the correct output which I wanted with the code written in Python.
However, I have no idea how to write it in MATLAB after the follwoing scripts.
MATLAB code
outliers = [1,3,7]; %outliers are indices numbers to delete
elm = [1, 2, 3, 4, 5, 6, 7, 8, 9];
%preferred output
[1, 3, 5, 6, 7, 9]
Python code
outliers = [1,3,7]
elm = [1, 2, 3, 4, 5, 6, 7, 8, 9]
for i in range(len(outliers)-1, -1, -1):
elm.pop(outliers[i])
print(elm)

 Respuesta aceptada

Debasish Samal
Debasish Samal el 7 de Jun. de 2019
You can achieve this on matlab by using the following code.
outliers = [1,3,7];
elm = [1, 2, 3, 4, 5, 6, 7, 8, 9];
elm(outliers+1) = []; %indexing using outliers and setting them to NULL
Notice that in MATLAB indexing starts from 1 instead of 0. So you have to add 1 to the index matrix (outliers).

Más respuestas (0)

Categorías

Productos

Versión

R2017b

Preguntada:

el 7 de Jun. de 2019

Editada:

el 7 de Jun. de 2019

Community Treasure Hunt

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

Start Hunting!

Translated by