Ma problématique est la suivante:
Je définis mon espace de travail (grille de points). Je choisis un critère quelconque pour trouver un point (ici, le maximum). A partir de ce point, je vais créer des sous-matrices. Mais je voudrais être sûre que selon mon pas de variation (ici, i + scale), je suis toujours dans ma grille de points initiale.
Voici un code reproductible:
Code : Tout sélectionner
## Paramètres
r <- sqrt(2)
scale = 0.0707
## Création de la grille de points
Xg <- expand.grid(X1 = seq(-r,r,scale), X2=seq(-r,r,scale))
Xg <- as.matrix(Xg)
sphere <- sqrt(Xg[,1]^2+Xg[,2]^2)
Xg2 <- cbind(Xg, sphere)
Xg3 <- Xg2[Xg2[,3]<=r+0.001,]
X <- Xg3[,-3]
rm(Xg,Xg2,Xg3)
## Critère quelconque
D <- matrix(rnorm(1257), nrow=1257, ncol=1)
Des <- cbind(X, D)
## Critère le plus grand
which.max(Des[,3])
mx <- as.matrix(Des[Des[,3]==max(Des[,3]),])
## graphique
matplot(X[,1], X[,2], pch=1)
matplot(mx[1,], mx[2,], pch=16, col="blue", add=TRUE)
try <- matrix(numeric(), nrow=10, ncol=2)
for (i in 1:nrow(try)) {
try[i,1] <- mx[1,1]+i*scale
try[i,2] <- mx[2,1]+i*scale
}
J'ai essayé d'utiliser la fonction match, mais chaque valeur est testée séparément, or je voudrais tester la ligne complète de try avec les lignes de X.
J'espère que je suis assez claire...
Quelqu'un aurait-il une idée ?
Je vous remercie par avance,
Bien cordialement,
Diane