Mykola Zotko
Mykola Zotko

Reputation: 17794

List of dataframes to dataframe of lists

How to convert a list of dataframes to a dataframe of lists? For example:

lst = [pd.DataFrame({'A': [1, 2], 'B': [10, 20]}),
       pd.DataFrame({'A': [3, 4, 5], 'B': [30, 40, 50]})]

Expected result:

           A             B
0     [1, 2]      [10, 20]
1  [3, 4, 5]  [30, 40, 50]

My real list contains thousands of dataframes.

Upvotes: 1

Views: 86

Answers (2)

BENY
BENY

Reputation: 323226

We could do

out = pd.concat(dict(enumerate(lst))).groupby(level=0).agg(list)
Out[1053]: 
           A             B
0     [1, 2]      [10, 20]
1  [3, 4, 5]  [30, 40, 50]

Upvotes: 2

Ignatius Reilly
Ignatius Reilly

Reputation: 1749

lst = [pd.DataFrame({'A': [1, 2], 'B': [10, 20]}),
       pd.DataFrame({'A': [3, 4, 5], 'B': [30, 40, 50]})]

dic_lst = [df.to_dict(orient='list') for df in lst]

pd.DataFrame(dic_lst)

Upvotes: 2

Related Questions