我有一個形式單元格:A = {[7]; []; [7,7]; [3,4,5]; [6,7]; [ 7,7-]; [7,8]; []};MATLAB中一個單元中的相似和不相似元素
我想在Matlab中分別找到一些相似和不相似的元素我怎麼能做到這一點?
我的意思是,那個元素[3,4,5]
是1
和要確定的元素的類型。
我有一個形式單元格:A = {[7]; []; [7,7]; [3,4,5]; [6,7]; [ 7,7-]; [7,8]; []};MATLAB中一個單元中的相似和不相似元素
我想在Matlab中分別找到一些相似和不相似的元素我怎麼能做到這一點?
我的意思是,那個元素[3,4,5]
是1
和要確定的元素的類型。
您可以將數字轉換爲字符串,然後使用unique
及其所有符合您的用途的屬性。
如果你問有關唯一和非唯一細胞的數量,然後再去做這樣的:
B= cellfun(@num2str, A, 'UniformOutput', false);
number_of_unique_cells=numel(unique(B));
number_of_repeated_cells=numel(A)-numel(unique(B));
你可以通過單元陣列循環:
A = {7;[];[7,7];[3,4,5];[6,7];[7,7];[7,8];[]};
elem = zeros(numel(A),2);
for k = 1:numel(A)
elem(k,1) = numel(unique(A{k}));
elem(k,2) = numel(A{k})-elem(k,1);
end
這裏的結果是2列向量elem
,其中第一個向量是no。獨特的元素和第二個是沒有。非單一元素:
elem =
1 0
0 0
1 1
3 0
2 0
1 1
2 0
0 0
@abbas如果這個答案幫助你,請按照網站的指導方針和[upvote/accept](https://stackoverflow.com/help/someone-answers)這個答案 – EBH
你能準確定義你的意思嗎? – avivr