A/B Test 基础使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了A/B Test 基础使用相关的知识,希望对你有一定的参考价值。

参考技术A 一、我们经常会面临多个设计方案的选择,比如app或pc端某个界面的某个按钮是用红色还是用蓝色,是放左边还是放右边; A/B 测试(A/B Testing)可能是解决这类问题的一个更好的方法。所谓 A/B 测试,简单来说,就是为同一个目标制定两个方案(比如两个页面),让一部分用户使用 A 方案,另一部分用户使用 B 方案,记录下用户的使用情况,看哪个方案更符合设计目标

(1)(客户端的工作):app启动,会请求abtest服务后台,获得所有的实验的以及命中的策略缓存在app中。

(2)  (abtest后台的工作):abtest接收一个uuid+ci+pt的请求,返回给app所有的实验的以及命中的策略,同时将这次请求和结果通过flume_agent收集日志,同步到Hadoop,最后导入Hive。

(3)(客户端的工作):在第1步的请求中的获得的所有的实验的以及命中的策略缓存在app中。

(4)  (客户端的工作)  : 进入到一个做ab实验的界面,按照第3步命中的实验的策略+展示的业务数据处理展示逻辑。

(5)(客户端的工作:):会把第4步这个界面的信息和埋点信息上传到数据中心的原始日志

(6)(数据组的工作):应用系统可以通过flume,将原始日志同步到Hadoop,最后导入Hive表,通过关联的条件将两个hive表关联,同时关联一些点击下单等数据,清洗数据成报表。

https://github.com/Aric-wang/ABTetsDemos

Python基础-函数篇

 1 # 任意数量实参(可选参数)
 2 def test(a,*b):
 3     return a,b
 4 
 5 print(test(1,2,3,4,5))
 6 # 返回的是一个元组
 7 
 8 # 任意数量的关键字实参
 9 def test(a,**b):
10     return a,b
11 
12 print(test(a=1,c=2,d=3,e=4,f=5))
13 # 返回的是一个字典
14 
15 # 让实参变成可选的
16 # 要给实参指定一个默认值,一个空字符串,就可以让实参变得可选的
17 def test(a=‘‘,**b):
18     return a,b
19 
20 print(test(c=2,d=3,e=4,f=5))
21 
22 # 返回值,可以是字典、列表、元组、集合函数。
23 # 返回一个函数
24 def test_2():
25     print(World!)
26 def test_1():
27     print(Hello)
28     return test_2()
29 
30 test_1()
31 #返回一个集合
32 def test_3():
33     a = [1,1,2,2,3,4,5]
34     return set(a)
35 
36 print(test_3())
37 
38 # 导入函数各种写法与解释:
39 
40 # import module_name # 导入整个模块
41 # from module_name import function_name   # 导入模块中的特定函数
42 # from module_name import function_name as fn # 使用 as  给函数指定别名
43 # import module_name as mn # 使用 as  给模块指定别名
44 # from module_name import * # 导入模块中的所有函数
45 
46 
47 # 函数参数的顺序问题:
48 # 函数参数:必选参数、默认参数、可选参数、关键字参数
49 def test_4(a,b=1,*c,**d):
50     return a,b,c,d
51 
52 print(test_4(1,2,3,4,f=5))

 

以上是关于A/B Test 基础使用的主要内容,如果未能解决你的问题,请参考以下文章

Linux基础命令

Python基础-函数篇

关于tuple 和 list 看点基础的东东

python基础===monkeytype可以自动添加注释的模块!

java基础_问号的特殊用途

java基础面试题