¿Existe una funcionalidad incorporada en R para ordenar los vectores de caracteres teniendo en cuenta el caso? sort
y order
ignorar el caso:No ignorar mayúsculas y minúsculas al ordenar cadenas de caracteres
tv <- c("a", "A", "ab", "B")
sort(tv)
## [1] "a" "A" "ab" "B"
Ésta es mi solución hasta el momento:
CAPS <- grep("^[A-Z]", tv)
c(sort(tv[CAPS]), sort(tv[-CAPS]))
## [1] "A" "B" "a" "ab"
que tenía exactamente el problema contrario, es decir, mi el valor predeterminado LC_COLLATE era "C" y yo quería usar el orden insensible a mayúsculas y minúsculas. No encontré nada mejor que probar algunos entornos locales instalados y sustituir la 3ª línea de la función con Sys.setlocale ("LC_COLLATE", "eu_ES.iso88591"). Estoy seguro de que está mal. ¿Cuál es la forma correcta de hacer eso? –
Un mejor método es usar 'stringr :: str_sort' y puede asignar la configuración regional para que tenga un resultado consistente. – dracodoc