Создание многоуровневого информационного кадра построчно - PullRequest
0 голосов
/ 11 января 2019

Итак, я установил некоторые функции для извлечения данных, и моя идея состоит в том, чтобы создать DataFrame со следующей структурой. Многоуровневый индекс, имеющий 3 индекса с именами «Дата», «Конкуренция», «Матч». Многоуровневый столбец, в котором у меня есть 2 уровня, с 2 значениями на верхнем уровне и 8 одинаковыми именами столбцов для каждого.

Полагаю, лучшим подходом является создание циклов для получения каждой строки и сохранения ее в списке, поэтому после ее завершения вам нужно всего лишь создать фрейм данных, но у меня возникают трудности с тем, как на самом деле это сделать.

Чтобы создать кадр для кадра данных, я делаю это следующим образом

indx=['pts','gfa','gco','cs','fts','bts','o25%','po25/bts']
findx=[('h/a stats',x) for x in indx]+[('total stats',y) for y in indx]
index=pd.MultiIndex.from_tuples(findx, names=['tipo', 'stat'])
index2=pd.MultiIndex.from_tuples([('date','competition','match')])

Если я просто сделаю

fframe=pd.DataFrame(index=index2,columns=index)
>>[1 rows x 16 columns]

Что в порядке, рамка имеет желаемую структуру, но если я попытаюсь добавить фиктивную строку с начала, чтобы проверить, работает ли она

r=['11-12-11','ARG1','Blois v Gries',1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]

fframe=pd.DataFrame(r,index=index2,columns=index)
>>ValueError: Shape of passed values is (1, 19), indices imply (16, 1)

Чего мне не хватает? Почему не заполняет фрейм данных? Как это сделать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...