"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo crear un marco de datos de Pandas a partir de un diccionario con matrices de diferentes longitudes?

¿Cómo crear un marco de datos de Pandas a partir de un diccionario con matrices de diferentes longitudes?

Publicado el 2024-11-11
Navegar:390

How to Create a Pandas Dataframe from a Dictionary with Arrays of Varying Lengths?

Creación de un marco de datos a partir de un diccionario con matrices de diferentes longitudes

El desafío presentado es generar un marco de datos con columnas que constan de una matriz numpy de diferentes longitudes valores extraídos de un diccionario. Para lograr esto, exploremos una solución usando Python.

En Python 3.x y superiores, se puede emplear el siguiente fragmento de código:

import pandas as pd
import numpy as np

# Define a dictionary with key-value pairs representing numpy arrays
d = {
    "A": np.random.randn(10),
    "B": np.random.randn(12),
    "C": np.random.randn(8)
}

# Create a dataframe by converting each key-value pair to a series
df = pd.DataFrame(
    dict([
        (k, pd.Series(v))
        for k, v in d.items()
    ])
)

# Display the resulting dataframe
print(df)

Este código crea un marco de datos con las columnas "A", "B" y "C", cada una con los correspondientes valores de matriz numerosos del diccionario. Si las matrices tienen diferentes longitudes, las alinea automáticamente, extendiendo las matrices más cortas con valores NaN como relleno.

En Python 2.x, se requiere una modificación menor:

import pandas as pd
import numpy as np

# Define a dictionary with key-value pairs representing numpy arrays
d = {
    "A": np.random.randn(10),
    "B": np.random.randn(12),
    "C": np.random.randn(8)
}

# Create a dataframe by converting each key-value pair to a series
df = pd.DataFrame(
    dict([
        (k, pd.Series(v))
        for k, v in d.iteritems()
    ])
)

# Display the resulting dataframe
print(df)

En Python 2.x, la función iteritems() se usa en lugar de items() para iterar sobre pares clave-valor en el diccionario.

Al utilizar este enfoque, puede crear cómodamente marcos de datos con columnas que contengan matrices de diferentes longitudes, lo que garantiza que los datos estén alineados y manejados correctamente.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3