Pandas Group By + Cumsum分类变量

时间:2018-06-10 17:13:53

标签: pandas group-by pandas-groupby cumsum

我对用户所做的足球比赛有所投注。他们的状态是正确的还是不正确每周(表中的'jornada')每个用户有10个匹配。此外,用户被分组到社区。

我想计算每周累计比率#Corrects / (#Corrects + #Incorrects)('jornada')foreach用户。

这就是数据集的样子: enter image description here

每个星期,每个用户将有10个新的猜测('数字'),必须累积到他在同一季节('temporada')的先前猜测。

这就是我的尝试:

bets.groupby(['temporada', 'username', 'comunidad', 'jornada'])['status'].cumsum()

但是提出错误:DataError: No numeric types to aggregate

我也试图使用get_dummies转换状态,然后在组中应用cum_sum,但是我应该在相同的一周中出现相同用户的10倍的相同比率且不会发生:

dum = pd.get_dummies(bets['status'])
bets2 = pd.concat([bets, dum], axis=1) 

corrects = bets2.groupby(['temporada', 'username', 'comunidad', 'jornada'])['Correct'].cumsum()
incorrects = bets2.groupby(['temporada', 'username', 'comunidad', 'jornada'])['Incorrect'].cumsum()
ratio = corrects / (corrects + incorrects)
bets3 = pd.concat([bets2, ratio], axis=1)

1 个答案:

答案 0 :(得分:1)

您可以创建新的para帮助来计算

usage: ipykernel_launcher.py [--auth_host_name AUTH_HOST_NAME]
                             [--noauth_local_webserver]
                             [--auth_host_port [AUTH_HOST_PORT [AUTH_HOST_PORT ...]]]
                             [--logging_level {DEBUG,INFO,WARNING,ERROR,CRITICAL}]
                             Ye8mB6VsUHw Ye8mB6VsUHw Ye8mB6VsUHw Ye8mB6VsUHw
                             Ye8mB6VsUHw EKyirtVHsK0 EKyirtVHsK0
ipykernel_launcher.py: error: the following arguments are required: Ye8mB6VsUHw, Ye8mB6VsUHw, Ye8mB6VsUHw, Ye8mB6VsUHw, EKyirtVHsK0, EKyirtVHsK0