gezählt wird. Beim Versuch, die Anzahl der TRUE
Werte in einem Vektor zu finden, stieß ich auf die erste Google hit. Dies entspricht jedoch nicht vollständig meinen Anforderungen. Ich bin interessiert, die Anzahl der TRUE
Werte in einem Vektor vor der ersten FALSE
wenn überhaupt zu finden. Ich habe einen Vektor a <- c(TRUE,TRUE,TRUE,FALSE,TRUE, TRUE)
und möchte alle TRUE
Werte vor dem FALSE
finden, so wird Ausgabe drei sein. Bitte beachten Sie, dass es auch funktionieren sollte, wenn nur TRUE
Werte im Vektor sind.Wie die Anzahl der TRUE-Werte in einem logischen Vektor vor FALSE
Antwort
Hier ist ein kurzer Weg:
sum(cumprod(a))
# [1] 3
wo cumprod
eine kumulative Produkt (von Nullen und Einsen in diesem Fall) gibt; so beseitigt es alle TRUE
's nach dem ersten FALSE
.
unten Anweisung auch easyly wir bekommen ...
which.min(a)-1
... etwas schneller auf großen Vektoren als die Lösung basierend auf 'cumprod()'. Für ein bewusst schlechtes Beispiel vergleichen Sie die beiden Lösungen auf: 'a <- rep (c (WAHR, FALSCH, WAHR), c (42, 1, 1e8))'. –
Diese Methode funktioniert nicht für einen Vektor, der nur 'TRUE' Werte enthält. Arbeiten nur für eine Kombination von "TRUE, FALSE" –
OK, dann brauchen Sie eine andere 'if()' Prüfung danach. Wenn das Ergebnis "0" ist, müssen Sie es in "Länge (a)" ändern. Wenn Sie dies sehr oft oder auf sehr große Daten anwenden müssen, ist das Timing immer noch besser. Wenn Sie dies nur als eine Convenience-Funktion benötigen, könnte die auf "cumprod()" basierende Ein-Zeilen-Lösung schneller tippen/erinnern. –
- 1. Wie TRUE-Werte in einem logischen Vektor zählen
- 2. Umkodierung Werte in einem Vektor, der die Anzahl der Paare von der gleichen Anzahl in einem anderen Vektor
- 3. einen logischen Vektor von Datenrahmen zu schaffen
- 4. Spalten auswählen in data.table basierend auf logischen Vektor
- 5. Anzahl der verschiedenen Werte in einem Vektor zählen
- 6. berechnen die Anzahl der Stellen in einem numerischen Vektor in R
- 7. Effektiv Ersetzen einer variablen Anzahl von NA-Werten basierend auf dem logischen Vektor
- 8. in einem boolean Vektor
- 9. Wie zählt man die Anzahl der Wörter in einem Satz?
- 10. Wie die Anzahl der Zeichen in einem Textbereich eingegeben begrenzen
- 11. Wie kann ich die Anzahl der logischen CPUs auf WinRT erhalten?
- 12. Wie nicht-leere Vektor in einem rekursiven Vektor-Typ
- 13. String vor logischen Operator wird nicht Anzeige in alert()
- 14. Wie Anzahl der Elemente zu finden, die
- 15. Zählen der Anzahl der Elemente mit den Werten von x in einem Vektor
- 16. Wie zähle ich die Anzahl der Zeilen in einem jqGrid?
- 17. Wie zählt man die Anzahl der Schlüssel in einem Hash?
- 18. Wie bekomme ich die Anzahl der Zeilen in einem Textfeld?
- 19. Wie berechnet man die Anzahl der Tage in einem Zeitraum?
- 20. Wie die Anzahl der Textfelder in einem Formular mit Javascript
- 21. Wie die Anzahl der Ebenen in einem B-Baum
- 22. Wie bekomme ich die Anzahl der Wochen in einem Monat
- 23. Ersetze Werte in einem Vektor basierend auf einem anderen Vektor
- 24. die Anzahl der Datensätze vor und nach einem bestimmten Indexwert in Pandas
- 25. count Anzahl der Vorkommen einer Zeichenfolge in einem Vektor der Zeichenfolge
- 26. , wie die Anzahl der Zeichen
- 27. Was in einem Vektor
- 28. Verbesserung der logischen MATLAB-Indizierungsleistung
- 29. Anzahl der logischen Inferenzen der Länge/2 in Prolog (swi-pl)
- 30. Wie R Vektor nach einem Vektor in Indizes
So schön !! Danke –