miércoles, 4 de febrero de 2026

Python For Data Science. Reduplicación de datos

 

Deduplicación de datos con Python
Estado: Traducido automáticamente del Inglés

Información:
Este elemento incluye contenido que aún no se tradujo a tu idioma preferido.

En esta lectura, aprenderá más sobre la gestión de duplicados. También aprenderá a identificar y decidir si la deduplicación es la estrategia adecuada para un conjunto de datos. Además, aprenderás algunas funciones comunes de Python para manejar duplicados.

Identificación de duplicados

Antes de tomar una decisión sobre si eliminar o no los valores duplicados, debemos determinar si existen valores duplicados en nuestro conjunto de datos.

Una forma sencilla de identificar duplicados es utilizar la función duplicated() de Pandas. duplicated() es un método de la clase DataFrame.

Esta función devuelve una serie de resultados "verdadero/falso", con "verdadero" indicando que el valor de los datos es un duplicado, y "falso" indicando que es un valor único.

He aquí un ejemplo de un marco de datos de cinco filas:

>>import pandas as pd >>df = pd.DataFrame([['wowyow','cistern',4.0],['wowyow','cistern',4.0],['Splaysh','jug', 5.5],['Splaysh', 'stock',3.3], ['Pipplee','stock',3.0]], columns=['brand', 'style', 'rating']) >>>df

brandstylerating
0wowyowcistern4.0
1wowyowcistern4.0
2Splayshjug5.5
3Splayshstock3.3
4Pippleestock3.0

Utilizando la función duplicated(), el resultado es que una ha sido marcada como "True", indicando que es un duplicado.

>>print(df)
>>print()
>>print(df.duplicated())

brand style rating 0 Wowyow cistern 4.0 1 Wowyow cistern 4.0 2 Splaysh jug 5.5 3 Splaysh stock 3.3 4 Pipplee stock 3.0 0 False 1 True 2 False 3 False 4 False dtype: bool

La identificación de duplicados para todo un marco de datos será diferente a la de una sola columna o índice. Asegúrese de utilizar la función duplicated() para un marco de datos completo. La función duplicated() sólo devolverá filas enteras que tengan valores que coincidan exactamente, no sólo valores individuales que coincidan encontrados dentro de una columna. Si desea identificar duplicados sólo para una columna o una serie de columnas dentro de un marco de datos, deberá incluirlo en la parte "subconjunto" del campo de argumento de la función duplicated(). Además, si desea especificar cuál de los duplicados debe mantenerse como "original" en lugar de como duplicado, puede especificarlo en la parte keep del campo de argumentos.

A continuación se muestra un ejemplo de identificación de duplicados en una sola columna (subconjunto) de valores y etiquetado de los últimos duplicados como "falso", de modo que se "mantienen":

>>print(df)
>>print()
>>print(df.duplicated(subset=['type'], keep='last'))

>>>

color rating type 0 olive 9.0 rinds 1 olive 9.0 rinds 2 gray 4.5 pellets 3 salmon 11.0 pellets 4 salmon 7.0 pellets 0 True 1 False 2 True 3 True 4 False dtype: bool

Hora de decidir: ¿Suprimir o no suprimir ?

COMO YA HA APRENDIDO, cada conjunto de datos es único y no se puede tratar a todos por igual. A la hora de tomar la decisión de eliminar o no los valores duplicados, piense detenidamente en el propio conjunto de datos y en el objetivo que desea alcanzar. ¿Qué impacto tendrá la eliminación de duplicados en su conjunto de datos y en su objetivo?

1. Decidir eliminar

Debe eliminar los valores duplicados si éstos son claramente erróneos o no representan correctamente el resto de valores únicos del conjunto de datos.

Esta imagen muestra una tabla de datos con los precios de la vivienda. Dos filas contienen los mismos datos.

Por ejemplo, puede estar razonablemente seguro de que un profesional de los datos eliminará (en la mayoría de los casos) los valores duplicados de un conjunto de datos que contenga direcciones y precios de viviendas. Contar la misma casa dos veces (en la mayoría de los casos) falseará cualquier conclusión extraída del conjunto de datos en su conjunto, como el precio medio de la casa, el precio total de la casa o incluso el número total de casas. En un caso como éste, un profesional de los datos eliminaría casi con toda seguridad los datos duplicados para representar de forma equitativa los datos restantes durante el análisis y la visualización.

2. Decidir NO eliminar

Debe mantener los datos duplicados en su conjunto de datos si es evidente que los valores duplicados no son errores y deben tenerse en cuenta a la hora de representar el conjunto de datos en su conjunto.

Esta imagen muestra una tabla de datos con datos de lanzamiento de peso olímpico. Dos conjuntos de filas contienen los mismos datos.

Por ejemplo, un conjunto de datos que marque el número de lanzamientos y distancias de un atleta olímpico de lanzamiento de peso en entrenamiento incluirá probablemente varias distancias duplicadas; sólo por la naturaleza del número de intentos y los límites que una persona puede tener una bola lastrada, habrá valores duplicados, especialmente si las medidas de distancia están etiquetadas con sólo 1 ó 2 decimales. En un caso así, es casi seguro que un profesional de los datos conservaría todos los datos para representarlos equitativamente en su conjunto durante el análisis y la visualización.

No se deje engañar - Cómo hacer la deduplicación

Antes de volver a Python y aprender a eliminar duplicados, definamos el término "deduplicación":

  • Deduplicación: La eliminación o remoción de valores de datos coincidentes en un conjunto de datos.

Existen varias bibliotecas, funciones y métodos en Python que se pueden utilizar para eliminar valores de datos coincidentes.

Una de las funciones más comunes es Pandas: drop_duplicates()

drop_duplicates() es otro método de DataFrame. Se utiliza para crear un nuevo marco de datos con todas las filas duplicadas eliminadas.

Por ejemplo, utilice un marco de datos de antes en esta lectura:

>>df

>>>

brand style rating 0 Wowyow cistern 4.0 1 Wowyow cistern 4.0 2 Splaysh jug 5.5 3 Splaysh stock 3.3 4 Pipplee stock 3.0

Ahora aplique la función eliminar duplicados:

>>df.drop_duplicates()

>>>

brand style rating 0 Wowyow cistern 4.0 2 Splaysh jug 5.5 3 Splaysh stock 3.3 4 Pipplee stock 3.0

Notará en la salida resultante que la fila duplicada de datos fue eliminada, dejando intactos los valores únicos restantes.

Nota: Tenga en cuenta que la función drop_duplicates(), tal como se ha escrito anteriormente, sólo eliminará los duplicados de coincidencias exactas de filas de datos completas. Si desea eliminar duplicados dentro de una única columna, deberá especificar qué columnas desea comprobar en busca de duplicados utilizando el argumento de la palabra clave subset.

Este ejemplo elimina todas las filas que tienen valores duplicados en la columna style (excepto la primera):

>>print(df)

>>df = df.drop_duplicates(subset='style')
>>print()
>>print(df)

>>>

brand style rating 0 Wowyow cistern 4.0 1 Wowyow cistern 4.0 2 Splaysh jug 5.5 3 Splaysh stock 3.3 4 Pipplee stock 3.0

Este ejemplo elimina todas las filas (excepto la primera) que tienen valores duplicados en las columnas style y rating:

>>print(df)

>>df = df.drop_duplicates(subset=['style''rating'])

>>print()
>>print(df)

>>>

brand style rating 0 Wowyow cistern 4.0 1 Wowyow cistern 4.0 2 Splaysh jug 5.5 3 Splaysh stock 3.3 4 Pipplee stock 3.0 brand style rating 0 Wowyow cistern 4.0 2 Splaysh jug 5.5 3 Splaysh stock 3.3 4 Pipplee stock 3.0


Puntos clave

La identificación de valores de datos duplicados en un conjunto de datos es una parte importante de las prácticas de EDA (o "Análisis exploratorio de datos"), en concreto de la limpieza y la validación. Una vez identificados los duplicados, piense en el impacto que tendrá en el conjunto de datos y en el objetivo de su análisis cuando decida eliminar o no los duplicados.

Recursos adicionales

¿Desea obtener más información sobre los duplicados y la deduplicación? Consulte los siguientes enlaces adicionales.

domingo, 1 de febrero de 2026

W3Schools. clase 2 Python

 

Ejecutar sintaxis de Python

Como aprendimos en la página anterior, la sintaxis de Python se puede ejecutar escribiendo directamente en la línea de comandos:

>>> print("Hello, World!")
Hello, World!

O creando un archivo Python en el servidor, usando la extensión de archivo .py y ejecutándolo en la línea de comandos:

C:\Users\Your Name>python myfile.py

Sangría de Python

La sangría se refiere a los espacios al comienzo de una línea de código.

Donde en otros lenguajes de programación la sangría en el código es para facilitar la lectura Solo que la sangría en Python es muy importante.

Python utiliza sangría para indicar un bloque de código.

EjemploConsigue tu propio servidor Python

if 5 > 2:
  print("Five is greater than two!")

Python te dará un error si omites la sangría:

Ejemplo

Error de sintaxis:

if 5 > 2:
print("Five is greater than two!")

El número de espacios depende de ti como programador, el uso más común es cuatro, pero tiene ser al menos uno.

Ejemplo

if 5 > 2:
 print("Five is greater than two!"
if 5 > 2:
        print("Five is greater than two!"

Tienes que usar la misma cantidad de espacios en el mismo bloque de código, De lo contrario Python te dará un error:

Ejemplo

Error de sintaxis:

if 5 > 2:
 print("Five is greater than two!")
        print("Five is greater than two!")


Variables de Python

En Python, las variables se crean cuando le asignas un valor:

Ejemplo

Variables en Python:

x = 5
y = "Hello, World!"

Python no tiene ningún comando para declarar una variable.

Aprenderá más sobre las variables en el Variables de Python capítulo.


Comentarios

Python tiene capacidad de comentarios para fines de documentación en código.

Los comentarios comienzan con a #, y Python representará el resto de la línea como un comentario:

Ejemplo

Comentarios en Python:

#This is a comment.
print("Hello, World!")

Ejercicio?

Verdadero o falso: la sangría en Python es solo para legibilidad.



W3Schools. Introducción a Python

 

¿Qué es Python?

Python es un lenguaje de programación popular. Fue creado por Guido van Rossum, y lanzado en 1991.

Se utiliza para:

  • desarrollo web (del lado del servidor),
  • desarrollo de software,
  • matemáticas,
  • scripting del sistema.

¿Qué puede hacer Python?

  • Python se puede utilizar en un servidor para crear aplicaciones web.
  • Python se puede utilizar junto con software para crear flujos de trabajo.
  • Python puede conectarse a sistemas de bases de datos. También puede leer y modificar archivos.
  • Python se puede utilizar para manejar grandes cantidades de datos y realizar matemáticas complejas.
  • Python se puede utilizar para la creación rápida de prototipos o para el desarrollo de software listo para producción.

¿Por qué Python?

  • Python funciona en diferentes plataformas (Windows, Mac, Linux, Raspberry Pi, etc).
  • Python tiene una sintaxis simple similar al idioma inglés.
  • Python tiene una sintaxis que permite a los desarrolladores escribir programas con menos líneas que otros lenguajes de programación.
  • Python se ejecuta en un sistema intérprete, lo que significa que el código se puede ejecutar tan pronto como se escribe. Esto significa que la creación de prototipos puede ser muy rápida.
  • Python puede tratarse de forma procedimental, orientada a objetos o funcional.

Es bueno saberlo

  • La versión principal más reciente de Python es Python 3, que usaremos en este tutorial.
  • En este tutorial Python se escribirá en un editor de texto. Es posible escribir Python en un entorno de desarrollo integrado, como Thonny, Pycharm, Netbeans o Eclipse, que son particularmente útiles al administrar colecciones más grandes de archivos Python.

Sintaxis de Python en comparación con otros lenguajes de programación

  • Python fue diseñado para ser legible y tiene algunas similitudes con el idioma inglés con influencia de las matemáticas.
  • Python utiliza nuevas líneas para completar un comando, a diferencia de otros lenguajes de programación que a menudo utilizan punto y coma o paréntesis.
  • Python se basa en la sangría, utilizando espacios en blanco, para definir el alcance; como el alcance de bucles, funciones y clases. Otros lenguajes de programación suelen utilizar corchetes rizados para este propósito.
>>print("Hello, World!")
>>>
print("Hello, World!")

Ejercicio?

¿Cuál es la extensión de archivo correcta para los archivos Python?





sábado, 31 de enero de 2026

Python for Data Science. Histogramas

Fuente: Google & Coursera

Como ha ido aprendiendo, el propósito del Análisis exploratorio de datos (EDA) es justo lo que su nombre indica: explorar y analizar los datos. Como profesional de los datos, casi siempre empezará con una pregunta u objetivo guía, como "¿Dónde se encuentran los mayores emisores de dióxido de carbono?" o "Determinar las características de las personas con más probabilidades de comprar el producto X" Reflexionar sobre ello a menudo a lo largo del proceso crea una fuerza motriz que te mantiene en el buen camino.

Una de las herramientas más importantes a su disposición a la hora de explorar datos es el histograma. Un histograma es una representación gráfica de una distribución de frecuencias, que muestra la frecuencia con la que aparece cada valor en un conjunto de datos o variable. Es esencial que los profesionales de los datos comprendan las distribuciones de sus datos, ya que este conocimiento impulsa muchas decisiones posteriores en torno al diseño de experimentos, el modelado y el análisis posterior. En esta lectura, aprenderás sobre los histogramas, qué son, cómo hacerlos y cómo interpretarlos.

Introducción a los histogramas

Los histogramas se utilizan habitualmente para ilustrar la forma de una distribución, incluida la presencia de valores atípicos, el centro de la distribución y la dispersión de los datos. Los histogramas se representan normalmente mediante una serie de barras, donde cada barra representa un rango de valores. La altura de las barras representa la frecuencia o el recuento de los puntos de datos dentro de ese rango.

El siguiente ejemplo es un histograma del número de segundos transcurridos entre las erupciones del géiser Old Faithful en el Parque Nacional de Yellowstone, Wyoming, Estados Unidos.


El eje x representa el número de segundos entre erupciones. El eje y representa el número de erupciones. Así, como indica la segunda barra del gráfico, hay 20 erupciones que se produjeron tras un tiempo de espera de 45-49 segundos.

La importancia de los histogramas

Los histogramas son una herramienta esencial para comprender las características de un conjunto de datos. Proporcionan una representación visual de la distribución de los datos y permiten a los profesionales de datos identificar patrones, tendencias o valores atípicos dentro de los datos. Los histogramas también pueden ayudar a los profesionales de datos a elegir pruebas y modelos estadísticos apropiados para los datos y a determinar si los datos cumplen los supuestos necesarios para el análisis. Los histogramas se utilizan ampliamente en cualquier campo y situación que requiera cualquier tipo de análisis de datos, incluidas las finanzas, la sanidad, la ingeniería y las ciencias sociales.

Cómo interpretar histogramas

Interpretar histogramas implica comprender la forma, el centro y la dispersión de la distribución. Hay varias formas comunes de histogramas, incluyendo:

1. Simétrico: Un histograma simétrico tiene una curva en forma de campana con un pico en el centro, lo que indica que los datos se distribuyen uniformemente alrededor de la media. También se conoce como distribución normal o gaussiana.


2. Sesgado: Un histograma sesgado tiene una cola más larga en un lado que en el otro. Un histograma sesgado a la derecha tiene una cola más larga en el lado derecho, lo que indica que hay más puntos de datos en el lado izquierdo del histograma.


Una distribución sesgada a la izquierda tiene una cola más larga en el lado izquierdo, lo que indica que hay más puntos de datos en el lado derecho.


3. Bimodal: Un histograma bimodal tiene dos picos distintos, lo que indica que los datos tienen dos modos.


4.
Uniforme: Un histograma uniforme tiene una distribución plana, lo que indica que todos los puntos de datos están distribuidos uniformemente.



Los ejemplos proporcionados no son las únicas distribuciones que encontrarás, pero son algunas de las más comunes. Pronto aprenderás más sobre las distribuciones.

Ahora, vuelve al histograma del géiser Old Faithful del principio de esta lectura. Pregúntate: ¿qué tipo de distribución representa ese gráfico? Además de la forma, es importante entender el centro y la dispersión. El centro de la distribución suele estar representado por la media o mediana, mientras que la dispersión está representada por la desviación estándar o rango de los datos. El centro y la dispersión pueden proporcionar información sobre la concentración y variabilidad de los datos.

Cómo crear histogramas

Las bibliotecas Seaborn y Matplotlib de Python proporcionan opciones sencillas y potentes para crear histogramas.

plt.hist(x, bins=10, ...)

Para generar un histograma en matplotlib, utilice la función hist() del módulo pyplot. La función puede tomar muchos argumentos diferentes, pero los principales son:

  • x: Una secuencia de valores que representan los datos que desea trazar. Puede ser una lista, tupla, matriz NumPy, serie Pandas, etc.

  • bins: El número de bins en los que quieres ordenar los datos. El valor por defecto es 10, pero este parámetro puede ser un int, una secuencia o una cadena. Si utiliza una secuencia, ésta define los bordes de las casillas, incluyendo el borde izquierdo de la primera casilla y el borde derecho de la última. En otras palabras, si bins = [1, 3, 5, 7], entonces el primer bin es [1-3) (incluyendo 1, pero excluyendo 3) y el segundo [3-5). Sin embargo, el último bin es [5-7], que incluye el 7. Una cadena se refiere a una estrategia de binning predefinida soportada por numpy. Consulta la documentación para obtener más información.

El siguiente ejemplo demuestra cómo generar el histograma del géiser Old Faithful desde el principio de esta lectura usando la función plt.hist().

>># Plot histogram with matplotlib pyplot
>>plt.hist(df['seconds'], bins=range(401015))
>>plt.xticks(range(351015))
>>plt.yticks(range(06110))
>>plt.xlabel('seconds')
>>plt.ylabel('count')
>>plt.title('Old Faithful geyser - time between eruptions')
>>plt.show();


En este caso, los datos que se grafican son la columna de segundos del marco de datos. Los intervalos comienzan en 40 segundos y van hasta 100 segundos en pasos de cinco, para un total de 12 intervalos.

sns.histplot(x, bins, binrange, binwidth ...)

Una forma de generar un histograma en Seaborn es utilizar la función sns.histplot(). Al igual que la función matplotlib, sns.histplot() puede tomar muchos argumentos. Éstos son algunos importantes:

  • x: La secuencia de datos. Igual que plt.hist()

  • bins: Lo mismo que plt.hist()

  • binrange: Valor mínimo y máximo de los bordes de los contenedores; puede utilizarse con bins o binwidth; por defecto son los extremos de los datos

  • binwidth: Anchura de cada bin, anula bins pero puede usarse con binrange

El siguiente ejemplo es el código utilizado para generar el histograma del géiser Old Faithful utilizando la función seaborn histplot() . Utiliza todos los parámetros mencionados anteriormente. Ejecute este bloque de código para generar un histograma.

Observe en este caso que binrange se define de 40 a 100 y binwidth se establece en 5. Esto produce los mismos resultados que definir bins=range(40, 101, 5). Este ejemplo también hace uso de un par de parámetros de estilo especificando un color concreto mediante notación de código hexadecimal y estableciendo el nivel de saturación del color al 100%, como indica el parámetro alpha.

>># Plot histogram with seaborn
>>ax = sns.histplot(df['seconds'], binrange=(40100), binwidth=5, color='#4285F4', alpha=1)
>>ax.set_xticks(range(351015))
>>ax.set_yticks(range(06110))
>>plt.title('Old Faithful geyser - time between eruptions')
>>plt.show();


Puntos clave

Los histogramas ayudan a los profesionales de los datos a comprender las distribuciones de frecuencia de sus conjuntos de datos y variables. El conocimiento de la forma y el tipo de distribución de los datos afectará a importantes decisiones posteriores, como las pruebas estadísticas y la selección de la arquitectura del modelo. Además, conocer la forma de los datos proporciona información valiosa sobre la historia que cuentan los datos, ya que ayuda a comprender sus tendencias de distribución.


Entradas recientes

Python For Data Science. Reduplicación de datos

  Deduplicación de datos con Python Estado: Traducido automáticamente del Inglés Traducido automáticamente del Inglés Información: Este elem...

Entradas Populares