0Pricing
Pandas & NumPy Academy · Lección

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: int64

Crear 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: float64

Crear 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: float64

Crear 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.00

Los 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)   # int64

Nombre 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: float64

Crear 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: int64

Alineació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     NaN

Comprobar 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)     # 1

Convertir 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

  1. Creación de una Series
  2. Acceso por etiquetas y por posiciones
  3. Operaciones vectorizadas en Series
  4. Métodos útiles de Series
← Volver a Pandas & NumPy Academy