Filter löschen
Filter löschen

How to remove the dublicated cells and empty cells

2 Ansichten (letzte 30 Tage)
busra gogen
busra gogen am 30 Mai 2022
Kommentiert: busra gogen am 30 Mai 2022
[A B]=size(SA);
for k=2:A
for j=1:B
if SA(k,j)~=0
as=as+1;
Atable{k,:}(:,as)=[SA(1,j) SA(k,j) SA(k,j)/(e-b+1) log10(SA(k,j)/(e-b+1))];
end
end
end
I have a 1X36 SA matrix and I obtained the values which are not equal to zero but there is an extra empty cell in Atable. How should I modify this code to remove the empty cell?
Also, In the double matrixes, there are some dublicated elements in each row but I want to remove them by keeping the last dublicated value. For example, If I have A matrix, I want to obtain the final A as shown in below.
A=[1 2 3 4 5 6 7 8;0.7 0.7 0.6 0.6 0.6 0.5 0.5 0.4]
Final_A=[2 5 7 8;0.7 0.6 0.5 0.4]

Akzeptierte Antwort

KSSV
KSSV am 30 Mai 2022
Let A be your cell array.
A = A(~cellfun('isempty',A)) ; % A has no more empty cells

Weitere Antworten (1)

Walter Roberson
Walter Roberson am 30 Mai 2022
format long g
A = [1 2 3 4 5 6 7 8;0.7 0.7 0.6 0.6 0.6 0.5 0.5 0.4]
A = 2×8
1 2 3 4 5 6 7 8 0.7 0.7 0.6 0.6 0.6 0.5 0.5 0.4
[~, ia] = unique(fliplr(A(2,:)), 'stable');
fliplr(A(:,end-ia+1))
ans = 2×4
2 5 7 8 0.7 0.6 0.5 0.4

Kategorien

Mehr zu Fluid Dynamics finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by