Bonjour,

Je n'arrive pas à tester convenablement le résultat d'une division d'un élément de matrice par un autre. Je m'explique…

Je crée trois matrices
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
cjmeasure.in <- matrix(rep(0,4*l),,4)				#create a vector to contain measures
minprojin <- matrix(rep(0,2*l),,2)
maxprojin <- matrix(rep(0,2*l),,2)
Elles sont donc en "double". Je remplis les deux premières colonnes de la matrice "cjmeasure.in" ainsi que la première colonne de "minprojin" et "maxprojin" à l'aide de résultats d'un calcul de programmation linéaire.

Ensuite, je remplis les deuxièmes colonnes de "minprojin" et "maxprojin" à l'aide d'un autre problème de programmation linéaire, et complète mes valeurs de "cjmeasure.in" à l'aide de division faites à partir de "minprojin" et "maxprojin". Typiquement :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
cjmeasure.in[j,3] <- minprojin[j,1]/minprojin[j,2]
cjmeasure.in[j,4] <- maxprojin[j,1]/maxprojin[j,2]
Je souhaite enfin remplacer les éventuels valeurs égales à 1 dans "cjmeasure.in" par "NaN", de sorte qu'il reste de type "double".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
if (cjmeasure.in[j,4] == 1)
{
	cjmeasure.in[j,4] <- NaN
}
Et là, alors que la valeur de la colonne 4 de la ligne j vaut 1 (affiché "1" et non "1.0000000" comme dans les autres colonnes, chose assez étonnante!), elle n'est pas remplacée par NaN. Lorsque je teste , la réponse est "FALSE".

Je ne comprend pas pourquoi. Quelqu'un pourrait-il m'aider/me guider?

Merci d'avance,

François