我有一个带有示例值的数据框,如下所示`col1 col2 A ['1','2','er'] A [] B ['3','4','ac'] B ['5'] C []`我想计算 col1 中每个值的总行数与 col2 中非空列表的总行数的百分比。如果 col1 中只有一个值,我就能做到。我正在寻找一种迭代地执行此操作的解决方案。谢谢您的帮助。
1 回答
慕桂英4014372
TA贡献1871条经验 获得超13个赞
我相信您需要比较更大的列表长度0,转换为数字然后聚合mean:
df1 = df['col2'].str.len().gt(0).view('i1').groupby(df['col1']).mean().reset_index(name='%')
print (df1)
col1 %
0 A 0.5
1 B 1.0
2 C 0.0
添加回答
举报
0/150
提交
取消