Info

此问题已关闭。 请重新打开它进行编辑或回答。

Extraction of unique arrays in a cell

1 次查看(过去 30 天)
Amir Mahmoudi
Amir Mahmoudi 2024-9-19
关闭: Stephen23 2024-9-19
此 个问题 已被 Voss 标记
Assume there is a cell of the size 1 by N. Each cell contains an array. Some of the arrays (of the same length) are equal. How can I remove duplicate ones? Is there a unique function for cells?

回答(1 个)

Taylor
Taylor 2024-9-19
One possible approach:
% Assume 'cellArray' is your 1xN cell array containing arrays
cellArray = {
[1, 2, 3],
[4, 5, 6],
[1, 2, 3], % Duplicate
[7, 8, 9],
[4, 5, 6] % Duplicate
};
% Convert each cell's array to a string representation
arrayStrings = cellfun(@mat2str, cellArray, 'UniformOutput', false);
% Find unique string representations and their indices
[~, uniqueIndices] = unique(arrayStrings, 'stable');
% Use the unique indices to create a cell array without duplicates
uniqueCellArray = cellArray(uniqueIndices);
% Display the result
disp('Cell array with duplicates removed:');
Cell array with duplicates removed:
disp(uniqueCellArray);
{[1 2 3]} {[4 5 6]} {[7 8 9]}

此问题已关闭。

标签

Community Treasure Hunt

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

Start Hunting!

Translated by