Trouver l'indice à l'intérieur d'un vecteur de satisfaire à une condition
Je suis à la recherche d'une condition qui renvoie l'indice d'un vecteur de satisfaire à une condition.
Par exemple-
J'ai un vecteur b = c(0.1, 0.2, 0.7, 0.9)
Je veux savoir le premier index de b pour laquelle dire b >à 0,65. Dans ce cas, la réponse devrait être de 3
J'ai essayé which.min(subset(b, b > 0.65))
Mais cela me donne 1 au lieu de 3.
S'il vous plaît aider
OriginalL'auteur user3453272 | 2014-03-26
Vous devez vous connecter pour publier un commentaire.
Utilisation
which
et de prendre le premier élément de la suite:OriginalL'auteur Roland
Être prudent,
which.max
est faux si la condition n'est jamais remplie, il ne retourne pasNA
:Pourquoi? Lorsque tous les éléments sont égaux,
which.max
retourne 1:Remarque: FALSE < VRAI
OriginalL'auteur Phuoc
Vous pouvez utiliser
which.max
:De
?which.max
: "Pour une logique du vecteur x, [...]which.max(x)
retour[s] l'indice de la première [...]TRUE
Vous devriez aussi jeter un oeil sur le résultat de votre code
subset(b, b > 0.65)
pour voir pourquoi il ne peut pas vous donner le résultat souhaité.OriginalL'auteur Henrik