切片阵列

时间:2011-09-27 11:59:57

标签: arrays matlab

我无法找到一个matlab函数来将一个元素切割出一个数组。

例如:

A = [1, 2, 3, 4]

我想取出这个数组的元素,比如元素3:

B = [1, 2, 4]

是否有matlab函数或我是否必须编写算法来构造一个包含除3以外的所有A元素的新数组?

2 个答案:

答案 0 :(得分:6)

这样做:

index_of_element_to_remove = 3;
A(index_of_element_to_remove) = [];

现在A将是[1 2 4]

如果您想要同时删除更多元素:

index_of_element_to_remove = [1 3];
A(index_of_element_to_remove) = [];

现在A将是[2 4]

答案 1 :(得分:4)

按值,将删除所有等于3的元素

A(find(A==3)) = []

或按索引

A(3) = []