我有一个包含列['toaddress','ccaddress','body']的数据框(df)
我想遍历数据帧的索引以获取toaddress和ccaddress字段中的电子邮件地址的最小,最大和平均数量,该数量通过计算这两列中每个字段内的实例和'@'确定
如果所有其他方法都失败了,我想我可以使用df.toaddress.str.contains(r'@')。sum()并将其除以数据帧中的行数即可得出平均值,但我认为这仅仅是计算至少具有1 @符号的行。
最佳答案
您可以使用
df[['toaddress', 'ccaddress']].applymap(lambda x: str.count(x, '@'))
获取每个单元格中
'@'
的计数。然后,您可以沿结果的行轴计算熊猫
max
,min
和mean
。当我评论原始问题时,您已经建议使用
df.toaddress.str.contains(r'@').sum()
-如果您愿意逐列而不是上面显示的方法,为什么不使用df.toaddress.str.count(r'@')
?