这是我的数据框
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
我试图找到属于每个垃圾桶的公司总数(如垃圾桶、垃圾桶等)
下面的语法给了我两年时间
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年。如何为所选行值计算多个列。从熊猫大师那里寻找一种有效的方法。