ごはんと飲み物は紙一重

あんまり更新できてないです

CTRデータをヒストグラムで眺めたい

CTR(Click Through Rate)のことで、日本語ではクリック率とか言います。広告関係のやつですね。Kaggleにも似たような内容があったような。

https://www.kaggle.com/c/avazu-ctr-prediction

これを各ユーザがどれだけクリックしてくれているかの分布を見てみたいというわけで、

仮に、広告を掲載したページが10000回表示され、そのうち100回だけ当該の広告がクリックされたとするならば、CTRは  100÷10000= 0.01 = 1% となるわけです。

今回の場合は

  • user_id (ユーザID)
  • click (クリックの有無)
  • 全体数

を使うような感じです。

x1 = df[df.click == True].groupby("user_id")["ある列"].count()
x2 = df.groupby("user_id")["ある列"].count()

で x1/x2 してそれを plt.histで出力することで大まかな分布を見ることができるみたいです。

コレを書きながら上記の書き方ではなく

x1 = df[df.click == True]["user_id"].value_counts()
x2 = df["user_id"].value_counts()

と書いたほうがソース的にぱっとみ理解しやすいような感じがした。と言う感じで自分の中でしっくり来た感じです。前者の方は教えてもらったほうなので、python特有の自分のよく使う関数メソッドや方法がソースにでてしまうという現象を自分の中で受けました。

いやぁ、いろんな書き方があるんだなぁ。