如何使用 Pandas 找到客户满意度?

Gok*_*mar 2 python dataframe python-3.x pandas

我有两列,例如agent_email 和workingcore。在努力核心中,Y 表示不满意,N 表示满意。

列如下所示:

agent_email effortscore.
ab           1
ab           0
xy           1
xy           0
Run Code Online (Sandbox Code Playgroud)
formula=(total 1's / total response)*100.
Run Code Online (Sandbox Code Playgroud)

我希望输出像

ab 50% csat
xy 100% csat
Run Code Online (Sandbox Code Playgroud)

jez*_*ael 5

我相信你需要聚集mean,它的工作,因为只有10值和号码1通过除以总的mean公式:

df = pd.DataFrame({'agent_email':['ab@gmail.com','ab@gmail.com','xy@gmail.com'],
                   'effortscore':[1,0,1]})

df1 = df.groupby('agent_email')['effortscore'].mean().mul(100).reset_index()
print (df1)
    agent_email  effortscore
0  ab@gmail.com         50.0
1  xy@gmail.com        100.0
Run Code Online (Sandbox Code Playgroud)

因为有问题的数据不同,需要通过eqfor==和 aggregate进行比较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
Run Code Online (Sandbox Code Playgroud)