У меня есть список кортежей в этом формате:
[("25.00", u "A"), ("44.00", u "X"), ("17.00", u "E""), (" 34.00 ", u" Y ")]
Я хочу посчитать, сколько раз у нас есть каждая буква.Я уже создал отсортированный список со всеми буквами, и теперь я хочу их подсчитать.
Прежде всего, у меня проблема с символом u перед вторым элементом каждого кортежа, я не знаю, как удалитьэто, я думаю, это что-то об окончании.
Вот мой код
# coding=utf-8
from collections import Counter
import pandas as pd
from pandas import ExcelWriter
from pandas import ExcelFile
df = pd.read_excel('test.xlsx', sheet_name='Essais', skiprows=1)
groupes = []
students = []
group_of_each_letter = []
number_of_students_per_group = []
final_list = []
def print_a_list(list):
for items in list:
print(items)
for i in df.index:
groupes.append(df['GROUPE'][i])
students.append(df[u'ÉTUDIANT'][i])
groupes = groupes[1:]
students = students[1:]
group_of_each_letter = list(set(groupes))
group_of_each_letter = sorted(group_of_each_letter)
z = zip(students, groupes)
z = list(set(z))
final_list = list(zip(*z))
for j in group_of_each_letter:
number_of_students_per_group.append(final_list.count(j))
print_a_list(number_of_students_per_group)
Группа каждой буквы представляет собой список с групповыми буквами без дубликатов.
Проблемаявляется то, что я получил правильное число значения с циклом for в конце, но список заполнен '0'.
На скриншоте ниже приведен пример файла Excel.Столбец «ETUDIANT» означает «Номер студента», но я не могу отредактировать файл, я должен разобраться с ним.ГРУППА означает ГРУППА, очевидно.Цель состоит в том, чтобы посчитать количество студентов в группе.Я думаю, что я на правильном пути, даже если есть более простые способы сделать это.
Заранее благодарю за помощь, даже если я знаю, что мой вопрос немного двусмысленный