Creación de una Series
Construya una Series de Pandas a partir de una lista de Python, un diccionario y un array de NumPy, e inspeccione sus atributos index y values.
Creación de una Series es una lección gratuita de Pandas & NumPy Academy en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Pandas & NumPy Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Pandas & NumPy Academy incluye 4 lecciones en total.
¿Qué es una Pandas Series?
Una Pandas Series es un array unidimensional etiquetado capaz de contener cualquier tipo de datos: enteros, números de punto flotante, cadenas, objetos de Python o incluso otras Series. Piense en ella como un array de NumPy con un índice personalizado (etiquetas para cada elemento). El índice hace que las Series sean mucho más potentes que los arrays simples en tareas de análisis de datos en las que los valores necesitan nombres descriptivos.
import pandas as pd
import numpy as np
s = pd.Series([10, 20, 30, 40])
print(s)
# 0 10
# 1 20
# 2 30
# 3 40
# dtype: int64Crear una Series a partir de una lista de Python
Pasar una lista de Python a pd.Series() crea una Series con un RangeIndex entero predeterminado (0, 1, 2, ...). Puede proporcionar etiquetas de índice personalizadas mediante el parámetro index=. La longitud de la lista de índices debe coincidir con la longitud de los datos. Las etiquetas pueden ser cadenas, enteros, fechas o cualquier objeto de Python hashable.
import pandas as pd
temps = pd.Series([22.5, 19.0, 25.3, 17.8],
index=['Mon', 'Tue', 'Wed', 'Thu'])
print(temps)
# Mon 22.5
# Tue 19.0
# Wed 25.3
# Thu 17.8
# dtype: float64Crear una Series a partir de un diccionario
Puede pasar un diccionario de Python directamente a pd.Series(). Las claves del diccionario se convierten en las etiquetas del índice y los valores se convierten en los datos. Es una de las formas más naturales de crear una Series cuando los datos ya tienen etiquetas significativas. La Series resultante mantiene el orden de inserción del diccionario (Python 3.7+).
import pandas as pd
stock = {'AAPL': 182.5, 'GOOG': 141.3, 'MSFT': 378.9}
s = pd.Series(stock)
print(s)
# AAPL 182.5
# GOOG 141.3
# MSFT 378.9
# dtype: float64Crear una Series a partir de un array de NumPy
Puede pasar un ndarray de NumPy como argumento de datos. El dtype de la Series coincide con el dtype del ndarray. Los datos subyacentes se almacenan como un array de NumPy, por lo que todas las ufuncs de NumPy funcionan directamente con las Series. Esto facilita migrar código existente de NumPy a Pandas sin reescribir la lógica de preparación de datos.
import pandas as pd
import numpy as np
arr = np.linspace(0, 1, 5)
s = pd.Series(arr, index=['a', 'b', 'c', 'd', 'e'])
print(s)
# a 0.00
# b 0.25
# c 0.50
# d 0.75
# e 1.00Los atributos .index y .values
s.index devuelve el objeto Index que contiene las etiquetas. s.values devuelve el array de NumPy subyacente con los valores de los datos. Ambos son esenciales para la interoperabilidad: puede pasar s.values a cualquier función de NumPy y convertir el resultado de nuevo en una Series con el índice original. s.dtype proporciona el tipo de datos de los valores.
import pandas as pd
s = pd.Series([3, 1, 4], index=['x', 'y', 'z'])
print(s.index) # Index(['x', 'y', 'z'], dtype='object')
print(s.values) # [3 1 4]
print(s.dtype) # int64Nombre de la Series y nombre del índice
Una Series puede tener un atributo .name que describa qué representan los valores, y su índice puede tener un atributo .name que describa qué representan las etiquetas. Estos nombres aparecen en los DataFrames cuando una Series se asigna a una columna y en las etiquetas de los gráficos. Asígnelos con s.name = 'price' o al crearla mediante name=.
import pandas as pd
s = pd.Series([1.2, 3.4, 5.6],
index=['a', 'b', 'c'],
name='measurement')
s.index.name = 'label'
print(s)
# label
# a 1.2
# b 3.4
# c 5.6
# Name: measurement, dtype: float64Crear una Series escalar
Pasar un único valor escalar a pd.Series() con un índice explícito crea una Series en la que todos los elementos son iguales a ese escalar. Esto es similar a np.full() de NumPy y resulta útil para crear Series constantes de referencia que se puedan restar a una Series de datos reales o comparar con ella.
import pandas as pd
s = pd.Series(5, index=['a', 'b', 'c', 'd'])
print(s)
# a 5
# b 5
# c 5
# d 5
# dtype: int64Alineación automática de índices
Una de las funciones más potentes de las Series de Pandas es la alineación automática de índices. Al sumar dos Series, Pandas las alinea por sus etiquetas antes de calcular el resultado. Si una etiqueta existe en una Series pero no en la otra, el resultado para esa etiqueta es NaN. Esto evita los errores silenciosos de desplazamiento de una posición habituales en las operaciones con arrays de NumPy.
import pandas as pd
a = pd.Series([1, 2], index=['x', 'y'])
b = pd.Series([10, 20], index=['y', 'z'])
print(a + b)
# x NaN
# y 12.0
# z NaNComprobar la longitud y la forma de una Series
len(s) devuelve el número de elementos. s.shape devuelve una tupla (n,) coherente con las convenciones de NumPy. s.size es igual que len(s). Utilice estas comprobaciones al principio de un pipeline para validar que la carga de datos produjo el número de filas esperado antes de continuar con el análisis.
import pandas as pd
s = pd.Series(range(10))
print(len(s)) # 10
print(s.shape) # (10,)
print(s.size) # 10
print(s.ndim) # 1Convertir una Series a otros tipos
Puede convertir una Series de nuevo en una lista de Python con s.tolist(), en un array de NumPy con s.to_numpy() o s.values, y en un diccionario con s.to_dict(). Estas conversiones resultan útiles para interoperar con bibliotecas que no aceptan objetos de Pandas y para serializar resultados en JSON o CSV.
import pandas as pd
s = pd.Series([10, 20, 30], index=['a', 'b', 'c'])
print(s.tolist()) # [10, 20, 30]
print(s.to_numpy()) # [10 20 30]
print(s.to_dict()) # {'a': 10, 'b': 20, 'c': 30}Series frente a columna de DataFrame
Una sola columna de un DataFrame es una Series. Cuando accede a df['col'], Pandas devuelve una Series con el mismo índice que el DataFrame. A la inversa, una Series con un atributo name se puede insertar directamente como columna en un DataFrame. Comprender esta relación le ayuda a pasar con fluidez de las operaciones con Series a las operaciones con DataFrames.
import pandas as pd
df = pd.DataFrame({'a': [1, 2, 3], 'b': [4, 5, 6]})
col = df['a'] # Series
print(type(col)) # <class 'pandas.core.series.Series'>
print(col.values) # [1 2 3]Comprobación rápida
Compruebe su comprensión de la creación de Pandas Series de esta lección.
Resumen de la lección
En esta lección ha aprendido que: una Series es un array unidimensional etiquetado basado en un ndarray de NumPy, se puede crear a partir de listas, diccionarios, arrays de NumPy o escalares y la alineación de índices gestiona automáticamente la aritmética basada en etiquetas entre dos Series. A continuación veremos cómo acceder a los elementos de una Series por etiqueta con .loc y por posición con .iloc.
Preguntas frecuentes
¿La lección «Creación de una Series» es gratis?
Sí — el texto completo de «Creación de una Series» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Pandas & NumPy Academy, actualiza a CoddyKit PRO. El curso de Pandas & NumPy Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Creación de una Series»?
Construya una Series de Pandas a partir de una lista de Python, un diccionario y un array de NumPy, e inspeccione sus atributos index y values. Practicas Pandas & NumPy Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Pandas & NumPy Academy?
No se requiere experiencia previa. Pandas & NumPy Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.
¿Cuánto tiempo toma la lección «Creación de una Series»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Pandas & NumPy Academy?
Sí. Cada lección de Pandas & NumPy Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Creación de una Series
- Acceso por etiquetas y por posiciones
- Operaciones vectorizadas en Series
- Métodos útiles de Series