フィルターのクリア

index position of the 1

1 回表示 (過去 30 日間)
khaled hassan
khaled hassan 2016 年 11 月 7 日
コメント済み: Walter Roberson 2016 年 11 月 7 日
Hi,
I have the following cell array
TEST = [1] [] [] [0] []
I want to get the index position of the 1 not the 0. thanks :) !

採用された回答

Walter Roberson
Walter Roberson 2016 年 11 月 7 日
find( cellfun(@(C) numel(C) == 1 && C == 1, TEST) )
In the special case where each entry is only empty or a scalar, then
find( cellfun(@(C) C == 1, TEST) )
If you want to find a 1 anywhere in the cell:
find( cellfun(@(C) any(C == 1), TEST) )

その他の回答 (2 件)

KSSV
KSSV 2016 年 11 月 7 日
TEST = {[1] [] [] [0] []} ;
% index position of 1
idx = find([TEST{:}] == 1)
  1 件のコメント
Walter Roberson
Walter Roberson 2016 年 11 月 7 日
If you switch to
TEST = {[0] [] [] [1] []} ;
then [TEST{:}] would be [0 1] and you would return an index of 2, but the actual index should be 4.

サインインしてコメントする。


khaled hassan
khaled hassan 2016 年 11 月 7 日
thank you a lot :) !!!!!!!!!!!!! it worked perfectly

カテゴリ

Help Center および File ExchangeMatrix Indexing についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by