Matlab过滤器cellarray?

时间:2015-12-01 11:57:40

标签: matlab sorting filtering

我的酒窖输出低了。

 a = {'100.000000', '23.860477', '23.924062', '41.759920', '46.911883', '48.074160'};

我想使用cellfun函数使用条件过滤此数组,如果值大于75则将保留并且休息将被删除

1 个答案:

答案 0 :(得分:2)

这真的很微不足道,但是我没有找到能给出真正直接答案的重复内容,所以我可能只是在这里写一下。

Indexes = find(arrayfun(@(idx) str2double(YourCell{idx}) > 75, 1:size(YourCell,2)));

或者我认为这可能更容易+更快:

T = str2double(YourCell);
Indexes = find(T > 75);

索引应该允许您使用vertcathorzcat创建矩阵或单元格以创建所需的新单元格/矩阵。

YourCell = {'1''2'''''56''76''87'}

Indexes =

 5     6