#pandas #dataframe #rows #transpose
#pandas #фрейм данных #строки #транспонировать
Вопрос:
У меня есть фрейм данных pandas, значения которого в первом столбце повторяются каждые 5 строк следующим образом:
ITEM VALUE
===== ======
item1 value1
item2 value2
item3 value3
item4 value4
item5 value5
item1 value6
item2 value7
item3 value8
item4 value9
item5 value10
мне нужно создать фрейм данных, подобный приведенному ниже, с уникальными значениями из столбца 1, чтобы использовать его в качестве заголовка и транспонировать под ним каждые 5 записей из столбца 2. есть простой способ сделать это с помощью pandas? я проверил все страницы в stackoverflow на предмет транспонирования данных с использованием pandas, но ни одна из них не была полезна для этого предложения.
item1 item2 item3 item4 item5
====== ====== ====== ====== ======
value1 value2 value3 value4 value5
value6 value7 value8 value9 value10
Ответ №1:
Назначьте номер группы, а затем pivot
ее:
print (df.assign(group=df.index//5).pivot(index="group", values="VALUE", columns="ITEM"))
ITEM item1 item2 item3 item4 item5
group
0 value1 value2 value3 value4 value5
1 value6 value7 value8 value9 value10