Los retos de descomponer un nombre en columnas

text2columns-excel

Cuando guardamos nombres de personas en hojas de Excel o en bases de datos en Access la decisión de separar o no las partes del nombre en columnas (Excel) o campos (Access) afecta la futura portabilidad de esos datos. La mejor decisión entendemos que es separar las partes desde un principio, antes de que tenga miles de nombres.

En las migraciones que hemos hecho no es raro encontrar los datos originales con una sola columna para el nombre y sus apellidos:

El problema con este arreglo es que, en general, separar un nombre humano en sus componentes es un problema difícil de resolver. El caso particular de arriba se resuelve fácilmente con tomar como separador los espacios y utilizar “Text to columns” en Excel (video) para descomponerlo:

Pero la dificultad aumenta si lo que tenemos como nombre es:

Nombre
Alfredo I. De Jesús Guzmán

En este caso el nombre se descompondría de esta forma:

Note que el apellido “Guzmán” se perdería si suponemos que un nombre sólo puede tener un máximo de cuatro componentes. Que le parece esta otra situación:


Nombre
María de Los Ángeles De Jesús Guzmán

Descomponer ese nombre sólo utilizando la existencia de espacios como regla nos daría esto:

¿Que ocurriría si algunos nombres de su lista no tienen iniciales? Por ejemplo:

Nombre
Alfredo Ocasio Guzmán

En ese caso se descompondría incorrectamente en:

Se puede argumentar que sería cuestión de separar mediante los espacios usando “Text to columns” y luego revisar cada fila moviendo todo a la columna apropiada, pero esa técnica no es práctica cuando tenemos 14000 nombres.

El problema se complica más cuando aprendemos que la descomposición de un nombre depende del país o lenguaje de dónde ese nombre es oriundo. En el caso de Puerto Rico, es usual el formato “Nombre, Inicial, Apellido paterno, Apellido materno” y sabemos reconocer cuando un nombre o apellido es compuesto, como “del Toro” o “de los Ángeles”.

Pero tan cerca como en Estados Unidos una descomposición común es “Nombre, Nombre intermedio, Apellido” o en Inglés: “First Name, Middle Name, Last Name”

Usando ese último formato “María de Los Ángeles De Jesús Guzmán” se descompondría así (aunque no usando “Text to columns”):

Existen librerías de software que nos ayudan con la descomposición automática de nombres, pero no existe una que cubra todos los posibles casos. Con demasiada frecuencia nos encontramos haciendo ajustes al código de las librerías o haciendo ajustes manuales a los datos finales, lo cual añade tiempo a los proyectos.

Nuestra recomendación: Si está empezando a recolectar los datos de sus clientes (estudiantes, pacientes, etc.) en Excel o Access (o Quickbooks o Sage 50) trate de separar los nombres desde el principio en el formato usual de su país. Le ahorrará una significativa cantidad de tiempo a la hora de construir reportes o migrar datos a otro sistema en el futuro. Créanos, si está usando exclusivamente Excel y Access y su negocio está creciendo, necesitará una migración de datos muy pronto.

Suscríbase a nuestro boletín para recibir recomendaciones sobre cómo distintas tecnologías le ayudarán a liberar tiempo, reducir costos y eliminar estrés en su empresa. Las suscripción es gratis y puede removerse usted mismo del programa cuando quiera: Reciba por email "Tecnología para mi negocio con Nuvelbits".