ruby - 如何衡量点击率的统计显着性?

标签 ruby statistics

我正在构建一个开源项目,该项目将衡量各种 Facebook 广告的点击率差异是否显着。从 http://adwords.google.com/support/aw/bin/answer.py?hl=en&answer=167743 中汲取灵感我写了下面的 ruby​​ 代码(假设任何没有定义的方法完全按照他们说的去做)。

点击率定义为点击广告的人数与看到该广告的人数之比。



  # ** exponentiation
  # * multiplication
  # / division
  def standard_deviation
    (experiment_ctr/(control_ctr**3) * (no_of_clicks_for_control +
                                        no_of_clicks_for_experiment - product_of_ctrs *
                                        total_no_of_impressions ) / product_of_impressions) ** 0.5
  end

 def z_score
   (ratio_of_experiment_ctr_to_control - 1) / standard_deviation
  end


我从 Google 网站复制了标准偏差代码,但我觉得它有问题。有谁知道这是否正确?

非常感谢。

最佳答案

它看起来并不熟悉,因为它不是大多数人习惯看到的普通显着性检验。大多数显着性测试的公式如下(过于笼统,请勿喷火):

  1. 计算样本统计量,X
  2. 确定该统计量的预期值 E
  3. 确定该统计量的标准差 S
  4. 计算检验统计量 T = (X - E)/S
  5. 根据 T 的假设分布确定 T 是否显着。

对于常见的均值显着性检验,E 是样本均值,S 是我们最熟悉的样本标准差。

此显着性检验基于样本统计的某个比率。 Google 提供的 (E-C)/C 公式。根据 Google 的说法,该统计数据的预期值为 (1/(1-p)) - 2,标准差为 (p/( (C+E) * (1-p)^3 ))^0.5 .因此,这些应该是插入到上面 T 公式中的数字。 Google 解释中的 z-score。

因此,尽管公式看起来很奇怪,但它是基于可靠的基础知识。您应该可以放心使用它。

关于ruby - 如何衡量点击率的统计显着性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5226821/

相关文章:

ruby-on-rails - 在 url_for 中使用过期时的 Amazon S3 无效日期

machine-learning - MAPE 损失函数相对于 MAE 和 RMSE 的优势

python - 使用 Python 求解四分位数和十分位数

javascript - 为高度偏斜的数据生成直方图

ruby-on-rails - 使用 String#split 方法

ruby - 将 mechanize(甚至 Net::HTTP)与 ruby​​ 1.9 一起使用会返回 'OpenSSL::SSL::SSLError' - 如何强制使用 SSLv3?

ruby-on-rails - 调用 attr_accessible 时出现 MassAssignmentSecurity 错误

mysql - 多个 Rails 应用程序读取另一个 Rails 应用程序的单个数据库/表

c++ - 图像是样本还是总体

python - 修剪/缩尾标准差