Skip to contents

Los nombres resultantes son unicos y estan compuestos unicamente por el caracter _, numeros y letras. Las preferencias de mayusculas se pueden especificar utilizando el parametro case.

Los caracteres acentuados se transliteran a ASCII. Por ejemplo, una "o" con una dieresis alemana sobre ella se convierte en "o", y el caracter español "ñ" se convierte en "n".

Esta funcion toma y devuelve un data.frame. Se puede usar con pipelines `%>%`. limpiar_nombres se basa en la versatil funcion link[snakecase]{to_any_case}, que acepta muchos argumentos. Consulte la documentacion de esa funcion para obtener ideas sobre como sacar sacar el maximo provecho de limpiar_nombres. A continuacion se incluyen algunos ejemplos.

Esta funcion fue tomada del paquete janitor: link[janitor]{clean_names}.

Usage

limpiar_nombres(dat, ...)

Arguments

dat

data.frame.

...

Arguments passed on to limpiar_nombres2

case

Preferencias de mayusculas

sep_in

(abreviatura de entrada separadora) si es un carácter, se interpreta como una expresión regular (envuelta internamente en stringr::regex()). El valor por defecto es una expresión regular que coincide con cualquier secuencia de valores no alfanuméricos. Todas las coincidencias serán reemplazadas por guiones bajos (además de "_" y " ", para los que esto siempre es cierto, incluso si se proporciona NULL). Estos guiones bajos se utilizan internamente para dividir las cadenas en subcadenas y especificar los límites de las palabras.

transliterations

Un vector de caracteres (si no es NULL). Las entradas de este argumento deben ser elementos de stringi::stri_trans_list() (como "Latin-ASCII", que suele ser útil) o nombres de tablas de búsqueda (actualmente sólo se admite "german").

parsing_option

Un entero que determinará la parsing_option.

numerals

Carácter que especifica la alineación de los numerales ("medio", izquierda, derecha, asis o apretado). Es decir, numerales = "izquierda" garantiza que no haya ningún separador de salida delante de un dígito.

replace

Un vector de caracteres con nombre en el que el nombre se sustituye por el value.

ascii

Convertir los nombres a ASCII (TRUE, por defecto) o no (FALSE).

use_make_names

¿Deberia aplicarse el codigo make.names() para asegurar que la sea utilizable como un nombre sin comillas? (Evitar make.names() asegura que la salida es independiente de la localizacion, pero las comillas pueden ser necesarias).

Value

Devuelve el data.frame con nombres limpios.

Details

limpiar_nombres() esta destinado a ser utilizado en data.frames y objetos similares a un data.frame. Para limpiar otros objetos con nombre como listas con nombre y vectores, use limpiar_nombres2().

See also

Other Set names: mu_to_u

Examples


# --- uso ---
x <- data.frame(caseID = 1, DOB = 2, Other = 3)
limpiar_nombres(x)
#>   case_id dob other
#> 1       1   2     3

# o usando pipelines:
# x %>%
#  limpiar_nombres()

# si prefiere los nombres de las variables en camelCase:
#x %>%
 # limpiar_nombres(., "lower_camel")

# (not run) correr limpiar_nombres despues de cargar una base:
# library(readxl)
# read_excel("messy_excel_file.xlsx") %>%
#   limpiar_nombres()

# --- Aprovechando las ventajas de snakecase::to_any_case arguments ---

# Restaurar nombres de columnas para graficar
#mtcars %>%
#  limpiar_nombres(case = "title")

# indicar a limpiar_nombres dejar intactas ciertas abreviaturas:
#x %>%
#  limpiar_nombres(case = "upper_camel", abbreviations = c("ID", "DOB"))