项目简介
本项目是一个R包,集成了所有必要代码,可重现Howard和Ramdas(2019)论文《Sequential estimation of quantiles with applications to A/B - testing and best - arm identification》中的模拟结果和全部图表。其核心功能是进行顺序估计分位数,并应用于A/B测试和最佳臂识别。
项目的主要特性和功能
- 模拟结果重现:可重现论文中图1至图6的所有图表。
- 自定义模拟运行:提供多个函数,能运行不同模拟并将结果保存为CSV文件。
- C++支持:模拟代码依赖C++14编译器,且包含C++单元测试。
- 版本信息管理:借助Python脚本从configure.ac文件提取版本信息,生成含版本信息的Info.plist文件。
安装使用步骤
1. 安装R包
R
install.packages('devtools')
2. 运行模拟
- 使用run_paper_simulations(save = TRUE)运行图5的模拟,结果保存至build/simulations_10_64.csv。
- 使用run_ab_simulations(save = TRUE)运行图6的模拟,结果保存至build/simulations_2_256.csv。
3. 生成图表
- 使用make_intro_plot(save = TRUE)生成图1。
- 使用plot_quantile_cs(save = TRUE)生成图2。
- 使用plot_tuning(save = TRUE)生成图3。
- 使用make_simulation_plots('path/to/csv', save = TRUE)生成图5。
- 使用make_ab_plots('path/to/csv', save = TRUE)生成图6。
4. 运行C++单元测试
sh
make -C test runtests
需安装BH和confseq R包,因为项目链接了这些包的C++头文件。
5. 版本信息管理
- 下载并运行versiongenerate.py脚本,从configure.ac文件提取版本信息,生成Version.h文件。
- 用生成的Version.h文件构建Google Test测试框架,确保Info.plist文件版本信息正确。
注意:运行模拟耗时较长,建议在多核机器上运行以提升效率。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】