Series y Dataframes
Estructuras de Datos en Pandas: Series y DataFrame
Pandas, una de las bibliotecas más utilizadas en Python para la manipulación y el análisis de datos, ofrece dos estructuras de datos fundamentales: Series y DataFrame. Estas estructuras son la base para realizar operaciones de análisis de datos de manera eficiente y flexible. A continuación, se presentan explicaciones detalladas de cada una, junto con ejemplos de uso.
1. Series
Una Serie en Pandas es una estructura unidimensional que puede almacenar datos de cualquier tipo (números enteros, flotantes, cadenas, etc.). Cada elemento de una Series
tiene un índice asociado que permite acceder a los elementos de manera fácil y rápida. Es similar a un array de NumPy, pero con un índice que permite etiquetas personalizadas.
Características de una Serie
- Unidimensional: Almacena datos en una sola dimensión.
- Etiquetas: Cada elemento puede ser accedido por su etiqueta (índice).
- Homogeneidad: Aunque una
Series
puede almacenar datos de diferentes tipos, generalmente se usa para almacenar un solo tipo de datos.
Ejemplo de Creación de una Serie
import pandas as pd
# Creando una Serie simple
datos = [10, 20, 30, 40, 50]
serie = pd.Series(datos, index=['a', 'b', 'c', 'd', 'e'])
print(serie)
Output:
a 10
b 20
c 30
d 40
e 50
dtype: int64
Acceso a Elementos de una Serie
Puedes acceder a los elementos de una Series
utilizando su índice.
# Accediendo a un elemento por índice
print(serie['c']) # Output: 30
# Accediendo a un rango de elementos
print(serie[['b', 'd']]) # Output: b 20, d 40
Operaciones Comunes con Series
- Métodos Estadísticos: Puedes utilizar métodos como
mean()
,sum()
,max()
, etc., para realizar cálculos sobre los datos.
print(serie.mean()) # Output: 30.0
print(serie.sum()) # Output: 150
- Filtrado: Puedes filtrar los elementos según condiciones.
# Filtrando elementos mayores a 30
print(serie[serie > 30]) # Output: d 40, e 50
2. DataFrame
Un DataFrame en Pandas es una estructura bidimensional que se asemeja a una tabla en una hoja de cálculo o una base de datos. Permite almacenar datos en formato tabular, donde cada columna puede tener un tipo de datos diferente (números, texto, fechas, etc.). Un DataFrame
está compuesto por filas y columnas, y cada columna puede considerarse como una Series
.
Características de un DataFrame
- Bidimensional: Almacena datos en filas y columnas.
- Etiquetas: Cada fila y columna tiene etiquetas, lo que facilita la manipulación y el acceso a los datos.
- Heterogeneidad: Cada columna puede contener diferentes tipos de datos.
Ejemplo de Creación de un DataFrame
# Creando un DataFrame a partir de un diccionario
data = {
'Nombre': ['Alice', 'Bob', 'Charlie'],
'Edad': [24, 27, 22],
'Salario': [50000, 60000, 55000]
}
df = pd.DataFrame(data)
print(df)
Output:
Nombre Edad Salario
0 Alice 24 50000
1 Bob 27 60000
2 Charlie 22 55000
Acceso a Datos en un DataFrame
Puedes acceder a las columnas y filas de un DataFrame
utilizando diferentes métodos:
- Acceder a una columna:
# Accediendo a la columna 'Edad'
edades = df['Edad']
print(edades)
Output:
0 24
1 27
2 22
Name: Edad, dtype: int64
- Acceder a múltiples columnas:
# Accediendo a múltiples columnas
print(df[['Nombre', 'Salario']])
Output:
Nombre Salario
0 Alice 50000
1 Bob 60000
2 Charlie 55000
- Acceder a filas:
# Accediendo a la primera fila
primera_fila = df.loc[0]
print(primera_fila)
Output:
Nombre Alice
Edad 24
Salario 50000
Name: 0, dtype: object
Operaciones Comunes con DataFrames
- Métodos Estadísticos: Al igual que con las
Series
, puedes aplicar métodos estadísticos a las columnas delDataFrame
.
print(df['Salario'].mean()) # Output: 55000.0
- Filtrado: Puedes filtrar filas basadas en condiciones.
# Filtrando empleados con salario mayor a 55000
alto_salario = df[df['Salario'] > 55000]
print(alto_salario)
Output:
Nombre Edad Salario
1 Bob 27 60000
- Agregar o eliminar columnas:
# Agregar una nueva columna
df['Antigüedad'] = [2, 3, 1]
print(df)
# Eliminar una columna
df.drop('Antigüedad', axis=1, inplace=True)
print(df)
Resumen
Las estructuras de datos Series
y DataFrame
en Pandas son fundamentales para la manipulación y el análisis de datos. Las Series
son ideales para datos unidimensionales, mientras que los DataFrame
permiten trabajar con datos bidimensionales de manera eficiente. Ambos tipos de datos ofrecen una amplia variedad de métodos para realizar operaciones estadísticas, manipulación de datos y análisis, lo que hace que Pandas sea una herramienta potente y versátil en el campo del análisis de datos.