#python #pandas #list #dataframe
#python #панды #Список #фрейм данных
Вопрос:
Предположим, у меня есть список:
[(red, red, 1),
(red, blue, 3),
(red, yellow, 2),
(blue, red, 3),
(blue, blue, 1),
(blue, yellow, 4),
(yellow, red, 2),
(yellow, blue, 4),
(yellow, yellow, 1)]
Каков самый простой способ получить фрейм данных pandas, подобный этому?
red blue yellow
red 1 3 2
blue 3 1 4
yellow 2 4 1
Ответ №1:
Используйте конструктор DataFrame с поворотом по DataFrame.pivot
, последний удаляет имена индексов и столбцов по DataFrame.rename_axis
:
df = pd.DataFrame(L).pivot(0,1,2).rename_axis(index=None, columns=None)
print (df)
blue red yellow
blue 1 3 4
red 3 1 2
yellow 4 2 1