Asked By – Josh
Say I have a dictionary with 10 key-value pairs. Each entry holds a numpy array. However, the length of the array is not the same for all of them.
How can I create a dataframe where each column holds a different entry?
When I try:
ValueError: arrays must all be the same length
Any way to overcome this? I am happy to have Pandas use
NaN to pad those columns for the shorter entries.
Now we will see solution for issue: Creating dataframe from a dictionary where entries have different lengths
In Python 3.x:
import pandas as pd import numpy as np d = dict( A = np.array([1,2]), B = np.array([1,2,3,4]) ) pd.DataFrame(dict([ (k,pd.Series(v)) for k,v in d.items() ])) Out: A B 0 1 1 1 2 2 2 NaN 3 3 NaN 4
In Python 2.x: