Problème de test sur valeurs de matrices
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:
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:
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:
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
Code:
cjmeasure.in[j,4] == 1
, la réponse est "FALSE".
Je ne comprend pas pourquoi. Quelqu'un pourrait-il m'aider/me guider?
Merci d'avance,
François