我有两个专栏,如代理电子邮件和轻松评分。在易得分中,Y表示不满意,N表示满意。
列如下所示:
agent_email effortscore.
ab 1
ab 0
xy 1
xy 0
formula=(total 1's / total response)*100.
我希望输出像
ab 50% csat
xy 100% csat
最佳答案
我认为您需要aggregatemean
,它可以工作,因为只有1
和0
值和1
的数量除以total是mean
公式:
df = pd.DataFrame({'agent_email':['[email protected]','[email protected]','[email protected]'],
'effortscore':[1,0,1]})
df1 = df.groupby('agent_email')['effortscore'].mean().mul(100).reset_index()
print (df1)
agent_email effortscore
0 [email protected] 50.0
1 [email protected] 100.0
由于所讨论的数据不同,需要用
eq
比较==
和聚合mean
:print (df)
agent_email effortscore
0 ab Y
1 ab N
2 xy Y
3 xy N
df1 = df['effortscore'].eq('Y').groupby(df['agent_email']).mean().mul(100).reset_index()
print (df1)
agent_email effortscore
0 ab 50.0
1 xy 50.0
关于python - 如何使用 Pandas 找到客户满意度?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57937690/