Delete specific numbers from cell array
3 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Marie P.
il 18 Nov 2020
Risposto: madhan ravi
il 18 Nov 2020
I have a 1801 x 20 data matrix where one column is one set of data. I need to calculate the log diff and I I actually wanted to clear each column from the zeros, but each column has a different amount of zeros within the data (which is not possible in a matrix). I did this so far:
p3=num2cell(p2) ;
p3(p3==0)=[];
or:
p3(cellfun(@(p3==0)=[];
But both didnt work.
2 Commenti
Mathieu NOE
il 18 Nov 2020
hello Marie
why converting to cell array ? the test can be done directly on the nimeric data , column wise
regards
Risposta accettata
KALYAN ACHARJYA
il 18 Nov 2020
result=cell(1,20);
for i=1:20
data=p2(:,i);
data(data==0)=[];
result{i}=data;
end
result
The result is a cell array, whose individual elements having coloum of the p2 martix without zero. Hence individual cell elements will have different length after zero deletion.
Più risposte (1)
madhan ravi
il 18 Nov 2020
p2 = [1, 2; 0, 1]
p3 = num2cell(p2, 1);
Wanted = cellfun(@nonzeros, p3, 'un', 0)
0 Commenti
Vedere anche
Categorie
Scopri di più su Matrix Indexing in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!