compare a vector with every cells element and get the missing

hi . i have a vector V=[1:100] and a C=cell(1-n) with double[] values . how could i get the values in the vector that are not in any element of cell ? and another question : how could i get a vector with repeats of elements in cell ? for example if there are three 2 in the all elements of cell , in my vector index(2) i have 2 ? thanks a lot !.

댓글 수: 2

Adam
Adam 2017년 8월 7일
편집: Adam 2017년 8월 7일
Convert C to numeric and use
doc ismember
The second question is basically just a histogram isn't it?
doc histogram
@Adam i will look into it . thanks .

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

 채택된 답변

Star Strider
Star Strider 2017년 8월 7일
Use setdiff inside cellfun:
V = 1:100;
C = {randi(100, 1, 75)}; % Create ‘C’
Out = cellfun(@setdiff, {V}, C, 'Uni',0); % Use ‘setdiff’
Result = [Out{:}] % Dsiplay Result (Not Necessary For The Code)

댓글 수: 4

Hamid Salari
Hamid Salari 2017년 8월 7일
편집: Hamid Salari 2017년 8월 7일
@Star Strider . it works on a cell 1*1 . but my cell is 1*n and i need to check all the elements of cell .
Error using cellfun All of the input arguments must be of the same size and shape. Previous inputs had size 1 in dimension 2. Input #3 has size 12
It is necessary to use a loop to get separate outputs from each comparison of the elements of ‘C’. (Using repmat with ‘{V}’ fails to do this.)
This should work:
V = 1:100;
C = {randi(100, 1, 75), randi(100, 1, 55)}; % Create ‘C’
for k1 = 1:size(C,2)
Out{k1} = cellfun(@setdiff, {V}, C(k1), 'Uni',0); % Use ‘setdiff’
end
Result = [Out{:}]; % Dsiplay Result (Not Necessary For The Code)
I do not know what size ‘C’ is, so I am assuming it is (1 x n). If it is (n x 1), change the size dimension to ‘size(C,1)’. (You could also use the length function, but without knowing more about ‘C’, I hesitate to suggest it.)
@Star Strider. i got the idea behind it . thanks . my current cell is 1*12.
My pleasure.
My code should work with it as written.

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

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Time Series Events에 대해 자세히 알아보기

제품

질문:

2017년 8월 7일

댓글:

2017년 8월 7일

Community Treasure Hunt

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

Start Hunting!

Translated by