Je voulais savoir s'il existait le contraire de la fonction isnan, sans passer par un programme quelconque, juste à trouver sur matlab
Merci
Je voulais savoir s'il existait le contraire de la fonction isnan, sans passer par un programme quelconque, juste à trouver sur matlab
Merci
Tu peux très bien créer ta propre fonction ISNOTNAN comme ceci :
Ce qui donne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 function X=isnotnan(X) X=X==X;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 X=[1 -inf NaN 2 3 NaN pi inf] isnotnan(X)ans =
1 1 0 1 1 0 1 1
pourquoi pas ~isnan ?
Tout à fait.
J'avais d'ailleurs mentionné cette possibilité à Ptinéwik dans une précédente discussion.
J'en avais donc conclu qu'il voulait éviter de réutiliser ISNAN. Je me suis peut être trompé
Peu importe, si on compare les deux méthodes :
Me retourne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 function test M=rand(2500); idx=randperm(numel(M)); M(idx(1:2500))=nan; t=zeros(15,2); for n=1:15 clear idx idx2 tic idx=~isnan(M); t(n,1)=toc; tic idx2=isnotnan(M); t(n,2)=toc; end all(idx(:)==idx2(:)) T=mean(t)
ans =
1
T =
0.0331 0.0268
Merci pour vos 2 réponses.
En effet, je voulais à la fois me servir d'une expression courte (merci Dut pour la réponse sur l'autre post, et merci paradize3), mais je voulais aussi avoir un programme sans passer par isnan (ça me permet de comprendre un peu mieux la démarche, et de me familiariser avec la syntaxe tout en sachant sur le type de résultat attendu)....
Ben oui comme je débute, je passe par les bases....
En tout cas merci à tous.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager