Gibt es in R eine integrierte Funktionalität zum Sortieren von Zeichenvektoren unter Berücksichtigung von Groß- und Kleinschreibung? sort
und order
ignorieren den Fall:Groß-/Kleinschreibung beim Sortieren von Zeichenketten nicht ignorieren
tv <- c("a", "A", "ab", "B")
sort(tv)
## [1] "a" "A" "ab" "B"
Dies ist meine Lösung so weit:
Sys.setlocale(, "C")
sort(tv)
# [1] "A" "B" "a" "ab"
EDIT:
CAPS <- grep("^[A-Z]", tv)
c(sort(tv[CAPS]), sort(tv[-CAPS]))
## [1] "A" "B" "a" "ab"
Ich hatte genau das entgegengesetzte Problem, das heißt mein Standard LC_COLLATE war "C" und ich wollte Groß-und Kleinschreibung verwenden. Ich habe nichts besseres gefunden, als einige installierte Locales zu testen und die 3. Zeile der Funktion durch Sys.setlocale ("LC_COLLATE", "eu_ES.iso88591") zu ersetzen. Ich bin mir sicher, dass es falsch ist. Was ist der richtige Weg? –
Eine bessere Methode ist die Verwendung von 'stringr :: str_sort' und Sie können das Gebietsschema so zuweisen, dass es konsistente Ergebnisse liefert. – dracodoc