How to delete repeating column or duplicate column in MATLAB? of type Double

Hi,
How to delete the repeating or duplicate columns in matrix, is there any function in MATLAB?, for example in the input array row 2 are basically the occurance or row 1 values, so i am basically counting how many times that partiuclar value in row 1 has appeared in row 1.
Thanks in Advance
input array:
2 2 5 1 1 3 4 3 4
2 2 1 2 2 2 2 2 2
output array:
2 5 1 3 4
2 1 2 2 2
or more precise
1 2 3 4 5
2 2 2 2 1

2 Comments

Is the "more precise" one like that because it is sorted by the top row?
Is there any special way to handle repeated values in the top row?
The More precise is the sorted order of ouput array

Sign in to comment.

 Accepted Answer

output_array=unique(input_array.','rows').'

5 Comments

output_array = unique(input_array.', 'rows', 'stable').'
more_precise = unique(input_array.', 'rows').'
:D
how to code to delet repeating value in a row like this:
from
a = [1 2 2 4 4 2 2 1 1 4 4 ]
become
b = [1 2 4 2 1 4]
This really should be a new Q? because to Answer here isn't responsive to the original -- but...
a = [1 2 2 4 4 2 2 1 1 4 4 ] ;
ix=find(diff(a));
a([1 ix+1])
ans = 1×6
1 2 4 2 1 4

Sign in to comment.

More Answers (1)

>> uA=unique(A);
>> B=[uA;histc(A,uA)]
B =
1 2 3 4 5
2 2 2 2 1
>>
ADDENDUM: Above works with only the first row and computes the counts on the presumption they had to have been obtained somewhere before to have been posted...

Categories

Asked:

on 17 May 2019

Commented:

dpb
on 28 Aug 2022

Community Treasure Hunt

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

Start Hunting!