필터 지우기
필터 지우기

I want to find the position of cells with a specific content, but the empty cells are not counted, so I take a wrong result of position

조회 수: 1 (최근 30일)
I have the cell array a.
This cell array is a 1603 * 1 cell array .
I want to find the cells that contain 'svinw to ena zeugos', so this is what I did:
b=find(ismember([a{:,1}],{'svinw to ena zeugos'}));
But the rows that are empty (only contain [] ) are not counted, so the array b finds wrong rows that contain 'svinw to ena zeugos'.
What can I do?

답변 (1개)

Star Strider
Star Strider 2021년 11월 11일
The ‘b’ variable will contain the numeric indices from the logical vector that ismember returns, so ‘a{b,1}’ should return the desired results.
Lv = randi([0 1], 1, 10) == 1
Lv = 1×10 logical array
0 0 0 1 0 0 0 0 1 1
Nv = find((Lv))
Nv = 1×3
4 9 10
.
  댓글 수: 2
Ioannis Vourvachakis
Ioannis Vourvachakis 2021년 11월 11일
편집: Ioannis Vourvachakis 2021년 11월 11일
Τhe problem I describe is the following:
If I write b=ismember([a{:,1}],{'svinw to ena zeugos'});
b is a 1*1268 logical array, not the same dimensions as the array a.
This is happening because in array a the empty cells ( only contain [] ) are not counted.
I want the array b to have the same dimensions as array a.
The cell array a seems like

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Cell Arrays에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by