Effacer les filtres
Effacer les filtres

How do I replace/convert all zeros in 3rd-dimension to NaN

5 vues (au cours des 30 derniers jours)
NA
NA le 5 Sep 2020
Commenté : NA le 5 Sep 2020
Hi All,
I have a 5-D matrix: 5x16x20x3x15, where 5x16 is the data set; 20 is the number of trials (per experiment); 3 is the number of experiments (per participant); and 15 is the number of participants. If I had 1 particant that had a dataset (for only one exp) that was exclusively all zeros i.e. 5x16x20x2x2 was entirely zeros; would there be a way to convert the zeros to NaN, so that my mean and std calculations are not affected?
Cheers.

Réponse acceptée

David Hill
David Hill le 5 Sep 2020
yourMatrix(:,:,affectedTrials,affectedExperiment,affectedParticipant)=nan;
If all trials of the affected experiment are zeros, then:
yourMatrix(:,:,:,2,2)=nan;
  3 commentaires
David Hill
David Hill le 5 Sep 2020
If your matrix is not too large, this will work fine.
for k=1:size(yourMatrix,3)
for n=1:size(yourMatrix,4)
for m=1:size(yourMatrix,5)
if nnz(yourMatrix(:,:,k,n,m))==0
yourMatrix(:,:,k,n,m)=nan;
end
end
end
end
NA
NA le 5 Sep 2020
thanks mate

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Interpolation of 2-D Selections in 3-D Grids dans Help Center et File Exchange

Produits


Version

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by