回复: 5
跳转到指定楼层
上一主题 下一主题
收起左侧

用SQL实现ABTest的结果分析-全部Code

 
全局:

2024(7-9月) 分析|数据科学类 硕士 全职@Google - 内推 - 技术电面  | 😃 Positive 😣 Hard | Other | 在职跳槽

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x

分为四种情况:one sample/two sample, non proportional/proportional.--
需要深入地理解ttest,同时也要能够在实际的Code中计算出1. One-Sample T-Test (Non-Proportion)
  1. -- Step 1: Define hypothesized mean
  2. WITH hypothesized_mean AS (
  3.     SELECT 100.0 AS mu0 -- Replace 100.0 with your hypothesized mean
  4. ),
  5. -- Step 2: Calculate sample statistics
  6. sample_stats AS (
  7.     SELECT
  8.         COUNT(value) AS n,
  9.         AVG(value) AS sample_mean,
  10.         STDDEV(value) AS sample_stddev -- Use STDDEV_SAMP in some SQL dialects 注意计算sample的standard deviation 有 n与n-1的区别
  11.     FROM observations
  12. ),
  13. -- Step 3: Calculate the t-statistic
  14. t_statistic AS (
  15.     SELECT
  16.         (sample_mean - mu0) / (sample_stddev / SQRT(n)) AS t_value, --最重要的公式
  17.         n - 1 AS degrees_of_freedom
  18.     FROM sample_stats, hypothesized_mean
  19. ),
  20. -- Step 4: Return results
  21. results AS (
  22.     SELECT
  23.         t_value,
  24.         degrees_of_freedom,
  25.         CASE
  26.             WHEN ABS(t_value) >1.96 THEN 'Reject Null Hypothesis' -- Critical value 一般情况下使用z score 为了方便起见
  27.             ELSE 'Fail to Reject Null Hypothesis'
  28.         END AS conclusion
  29.     FROM t_statistic
  30. )
  31. -- Output
  32. SELECT * FROM results;
复制代码
.google  и
您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限 或 查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
portion Test
  1. -- Step 1: Calculate sample statistics for each group
  2. WITH group_stats AS (
  3.     SELECT
  4.         group,
  5.         COUNT(*) AS n,
  6.         SUM(outcome) * 1.0 / COUNT(*) AS proportion -- Proportion (p̂)
  7.     FROM observations
  8.     GROUP BY group
  9. ),
  10. -- Step 2: Calculate the standard error squared (SE²)
  11. standard_error_squared AS (
  12.     SELECT
  13.         g1.group AS group1,
  14.         g2.group AS group2,
  15.         g1.proportion AS p1,
  16.         g2.proportion AS p2,
  17.         g1.n AS n1,
  18.         g2.n AS n2,
  19.         -- Calculate SE² for each group
  20.         (g1.proportion * (1 - g1.proportion) / g1.n) +
  21.         (g2.proportion * (1 - g2.proportion) / g2.n) AS se_squared
  22.     FROM group_stats g1
  23.     CROSS JOIN group_stats g2
  24.     WHERE g1.group = 'A' AND g2.group = 'B' -- Replace 'A' and 'B' with group identifiers
  25. ),
  26. -- Step 3: Calculate the t-statistic
  27. z_statistic AS (
  28.     SELECT
  29.         (p1 - p2) / SQRT(se_squared) AS t_value
  30.     FROM standard_error_squared
  31. ),
  32. -- Step 4: Return results
  33. results AS (
  34.     SELECT
  35.         t_value,
  36.         CASE
  37.             WHEN ABS(t_value) > 1.96 THEN 'Reject Null Hypothesis'
  38.             ELSE 'Fail to Reject Null Hypothesis'
  39.         END AS conclusion
  40.     FROM t_statistic
  41. )
  42. -- Output
  43. SELECT * FROM results;
复制代码




求点大米~感谢​​​​​​​​

评分

参与人数 9大米 +19 收起 理由
TinaS + 1 给你点个赞!
怕黑的薯片1415 + 1 楼主/层主请继续!
梅杰·GRE + 1 赞一个
Hank02 + 2 很有用的信息!
solv6868 + 1 赞一个

查看全部评分


上一篇:Meta DSA(intern) PhD
下一篇:Meta DSA VO 面经

本帖被以下淘专辑推荐:

  • · google|主题: 44, 订阅: 0
推荐
 楼主| treasureisland 2024-12-11 10:00:21 | 只看该作者
全局:
求大家加点米感恩
回复

使用道具 举报

推荐
 楼主| treasureisland 2024-12-11 10:00:11 | 只看该作者
全局:
眼神放火的麦片 发表于 2024-12-10 14:19
小白路过,想问面试会考这种题吗?哪种岗位面试会考这种题呢?感谢回复。

product ds
回复

使用道具 举报

推荐
 楼主| treasureisland 2024-12-11 04:38:36 | 只看该作者
全局:
匿名用户 发表于 2024-12-10 12:18
为什么要用sql来写这些呢,Google 的coding 不能用Python写吗?

因为在现实中也存在用sql来写
回复

使用道具 举报

地里匿名用户
🔗
匿名用户-VOLWR  2024-12-11 04:18:23
为什么要用sql来写这些呢,Google 的coding 不能用Python写吗?
回复

使用道具 举报

全局:
小白路过,想问面试会考这种题吗?哪种岗位面试会考这种题呢?感谢回复。

评分

参与人数 1大米 +1 收起 理由
woodooman + 1 欢迎来一亩三分地论坛!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表