How to replace the zero with NaN in the specific column of cell arrays?

8 vues (au cours des 30 derniers jours)
BN
BN le 5 Nov 2022
Modifié(e) : VBBV le 5 Nov 2022
Hello,
I have a cell (1*5) with some 0 in the second and third columns in each cell array; I want to know how to replace all these zeros (only in second and third columns, not the first one) with NaN. I attached the cell.
Thank you so much

Réponse acceptée

VBBV
VBBV le 5 Nov 2022
Modifié(e) : VBBV le 5 Nov 2022
S = load(websave('I','https://in.mathworks.com/matlabcentral/answers/uploaded_files/1182108/I.mat'))
S = struct with fields:
I: {[444×3 double] [444×3 double] [444×3 double] [444×3 double] [444×3 double]}
K = cell2mat(S.I(:,1));
idx = find(K(:,2:3) == 0);
K(idx,2:3) = NaN
K = 888×3
132.6478 44.0000 40.0000 125.3750 NaN NaN 123.1060 NaN NaN 68.5260 NaN NaN 41.6045 NaN NaN 42.0444 NaN NaN 68.8907 NaN NaN 62.8754 NaN NaN 55.9440 NaN NaN 58.4338 NaN NaN

Plus de réponses (1)

KSSV
KSSV le 5 Nov 2022
Let A be your m*3 array.
A(A(:,2)==0,2)=NaN ; % repalce second column with NaN's
A(A(:,3)==0,3)=NaN ; % replace third column with NaN's

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Tags

Produits


Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by