У меня есть следующий фрейм данных:
import numpy as np
import pandas as pd
import random
df = pd.DataFrame(np.random.randint(0,20,size=(2, 2)), columns=list('AB'))
df
A B
0 13 4
1 16 17
Затем я создаю еще один фрейм данных в al oop, где столбцы фрейма данных являются списками. Здесь есть сообщение (Pandas разделить столбец списков на несколько столбцов ), в котором показано разделение столбцов.
tmp_lst_1 = []
for index, row in df.iterrows():
tmp_lst_2 = []
for r in range(len(row)):
tmp_lst_2.insert(r, random.sample(range(1, 50), 2) )
tmp_lst_1.insert(index, tmp_lst_2)
df1 = pd.DataFrame(tmp_lst_1)
df1
0 1
0 [21, 5] [6, 42]
1 [49, 40] [8, 45]
, но мне было интересно, есть ли более эффективный способ создать этот фрейм данных без необходимости разбивать все столбцы по отдельности? Я ищу что-то вроде этого:
df1
C D E F
0 21 5 6 42
1 49 40 8 45