это мой фрейм данных
year2000_bin year2001_bin year2002_bin Firm
0 binZ binZ binZ 0
1 binZ binZ binZ 1
2 binZ binZ binZ 2
3 binZ binZ binZ 3
4 binZ binZ binZ 4
5 binZ binZ binZ 5
6 binW binV binV 6
7 binZ binZ binZ 7
8 binZ binZ binZ 8
9 binZ binZ binZ 9
Я пытаюсь найти общее количество фирм, принадлежащих каждому бину (например, binZ, binW и т. Д.)
следующий синтаксис дает мне два года
dict1={k:list(v) for k, v in rebinnedDF.groupby('year2000_bin')['Firm'] }
dict2={k:list(v) for k, v in rebinnedDF.groupby('year2001_bin')['Firm'] }
year1= [(k, len(v1)) for k, v1 in dict1.items()]
year2= [(k, len(v2)) for k, v2 in dict2.items()]
for i in year1:
#print(i[0])
for j in year2:
if i[0]==j[0]:
print(j[0], i[1], j[1])
Я могу получить результат
(binZ, 9, 9)
(binW, 1, 0)
(binV, 0, 1)
мой ожидаемый результат:
(binZ, 9, 9, 9)
(binW, 1, 0, 0)
(binV, 0, 1, 1)
Это означает, что у меня есть заголовки столбцов year2000_bin, year2001_bin, year2002_bin - year2018_bin, всего 19 лет. Как мне посчитать, что несколько столбцов для этого выбранного значения строки. Ищете эффективный путь от гуру панды.