Я работаю над заданием, в котором я сделал диктат с Политическими партиями в качестве ключей и полами членов политических партий в качестве пунктов.
Диктант назван: genderlist
.код для моей команды следующий:
soup = BeautifulSoup(open(loadKandidatenlijst()).read(), features="xml")
genderlist = {}
for affiliation in soup.findAll('Affiliation'):
genders = []
party = affiliation.RegisteredName.text
genderlist[party] = 0
for name in affiliation.findAll('Candidate'):
gender = name.Gender.text
genders.append(gender)
genderlist[party] = genders
genderlist['Partij van de Arbeid (P.v.d.A.)'][:6], len(genderlist), len(genderlist['CDA'])
Мой вывод приводит к: (['male', 'female', 'male', 'female', 'male', 'female'], 24, 50)
Итак, когда я вставляю имя участника, это приводит к полу всех членов партии.
Теперь мне нужно создать фрейм данных, подобный следующему: ![enter image description here](https://i.stack.imgur.com/Y2OIQ.png)
Так, где он отдельно подсчитывает пол и возвращает процент женского в фрейме данных.
Я уже пробовал это:
pd.DataFrame(genderlist.items(),columns=['male', 'female'])
Это приводит к: ![enter image description here](https://i.stack.imgur.com/ZI8uX.png)
Как я могу сделать кадр данных, как ожидалось, где первые 30кандидаты от партии будут подсчитаны, и в результате будет получен разделенный между мужчинами и женщинами информационный кадр с процентом?
Не могли бы вы мне помочь, что теперь можно делать с моим кодом.
Спасибо заранее