如何计算点击率

这是一个例子,我有以下数据:

    datetime    keyword COUNT0   2016-01-05  a_click 1001   2016-01-05  a_pv    2002   2016-01-05  b_pv    1503   2016-01-05  b_click 904   2016-01-05  c_pv    1205   2016-01-05  c_click 90

我想将其转换为以下数据:

    datetime    keyword ctr0   2016-01-05  a       0.51   2016-01-05  b       0.62   2016-01-05  c       0.75

我可以使用不太优雅的代码来转换数据,但我希望能用更优雅的方式来做。


回答:

你可以这样做:

df['action'] = df.keyword.str.split('_').str.get(-1)df['keyword'] = df.keyword.str.split('_').str.get(0)df = df.set_index(['datetime', 'keyword', 'action']).unstack().loc[:, 'COUNT']df['ctr'] = df.click.div(df.pv)action              click   pv   ctrdatetime   keyword                  2016-01-05 a          100  200  0.50           b           90  150  0.60           c           90  120  0.75

Related Posts

个体类别准确率计算混淆

获得以下二元分类结果的数据点总数为1500。其中,我有…

在Keras中构建模型时的损失函数、度量标准和评分方法

在构建keras模型时,loss(损失函数)、metr…

如何在Python随机森林模型中删除可预测值(y)

我在Python中运行了一个随机森林模型来查看特征的重…

在Python TensorFlow中将分类级别转换为独热编码

如果我有一个这样的分类标签 labels = [cat…

ML – Octave – 正则化逻辑回归的梯度函数

我编写了两个代码实现来计算正则化逻辑回归算法的梯度增量…

如何定义交叉熵以处理相等的logits和标签?

通常我们定义交叉熵的方式如下: dim = 5logi…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注