{"id":83,"date":"2016-07-25T07:15:43","date_gmt":"2016-07-25T07:15:43","guid":{"rendered":"http:\/\/www.aarondefazio.com\/tangentially\/?p=83"},"modified":"2016-07-25T07:16:19","modified_gmt":"2016-07-25T07:16:19","slug":"how-to-do-ab-testing-with-early-stopping-correctly","status":"publish","type":"post","link":"https:\/\/www.aarondefazio.com\/tangentially\/?p=83","title":{"rendered":"How to do A\/B testing with early stopping correctly"},"content":{"rendered":"<p><!DOCTYPE html> <\/p>\n<p><!--l. 36--><\/p>\n<p class=\"indent\" >   It&#8217;s amazing the amount of confusion on how to run a simple A\/B test seen on the internet. The crux of the matter is<br \/>\nthis: <em>If you&#8217;re going to look at the results of your experiment as it runs, you can not just repeatedly apply a 5% significance level t-test.<\/em> Doing so WILL lead to false-positive rates way above 5%, usually on the order of<br \/>\n17-30%.\n<\/p>\n<p><!--l. 43--><\/p>\n<p class=\"indent\" >   Most discussions of A\/B testing do recognize this problem, however the solutions they suggest are simply wrong. I<br \/>\ndiscuss a few of these misguided approaches below. It turns out that easy to use, practical solutions have been worked out<br \/>\nby clinical statistician decades ago, in papers with many thousands of citations. They call the setting &#8220;Group Sequential<br \/>\ndesigns&#8221; [<a \nhref=\"#Xclincal-book\">Bartroff et&#x00A0;al.<\/a>,&#x00A0;<a \nhref=\"#Xclincal-book\">2013<\/a>]. At the bottom of this post I give tables and references so you can use group sequential<br \/>\ndesigns in your own experiments.\n<\/p>\n<h3 class=\"likesectionHead\"><a \n id=\"x1-1000\"><\/a>What&#8217;s wrong with just testing as you go?<\/h3>\n<p><!--l. 55--><\/p>\n<p class=\"noindent\" >The key problem is this: Whenever you look at the data (whether you run a formal statistical test or just<br \/>\neyeball it) you are making a decision about the effectiveness of the intervention. If the results look positive<br \/>\nand you may decide to stop the experiment, particularly if it looks like the intervention is giving very bad<br \/>\nresults.\n<\/p>\n<p><!--l. 61--><\/p>\n<p class=\"indent\" >   Say you make a p=0.05 statistical test at each step. On the very first step you have a 5% chance of a false positive (i.e.<br \/>\nthe intervention had no effect but it looks like it did). On each subsequent test, you have a non-zero additional probability<br \/>\nof picking up a false positive. It&#8217;s obviously not an additional 5% each time as the test statistics are highly correlated,<br \/>\nbut it turns out that the false positives accumulate very rapidly. Looking at the results each day for a 10<br \/>\nday experiment with say 1000 data points per day will give you about an accumulated 17% false positive<br \/>\nrate (According to a simple numerical simulation) if you stop the experiment on the first p&#x003C;0.05 result you<br \/>\nsee.\n<\/p>\n<hr class=\"figure\" \/>\n<div class=\"figure\" \n><br \/>\n<a \n id=\"x1-1001r1\"><\/a><\/p>\n<p><!--l. 73--><\/p>\n<p class=\"noindent\" ><img \nsrc=\"z_no_stopping.png\" alt=\"PIC\"  \n \/><br \/>\n <\/p>\n<div class=\"caption\" \n><span class=\"id\">Figure&#x00A0;1: <\/span><span  \nclass=\"content\">100 simulations of 0-effect (the null hypothesis) with no early stopping. Notice that at any point in time,<br \/>\nroughly 5% of the paths are outside the boundaries (A 5% false positive rate is expected).<\/span><\/div>\n<p><!--tex4ht:label?: x1-1001r1 -->\n   <\/div>\n<hr class=\"endfigure\" \/>\n<hr class=\"figure\" \/>\n<div class=\"figure\" \n><br \/>\n<a \n id=\"x1-1002r2\"><\/a><\/p>\n<p><!--l. 84--><\/p>\n<p class=\"noindent\" ><img \nsrc=\"z_stopping.png\" alt=\"PIC\"  \n \/><br \/>\n <\/p>\n<div class=\"caption\" \n><span class=\"id\">Figure&#x00A0;2: <\/span><span  \nclass=\"content\">Paths terminated when they cross the boundary on the next step. 12 of 100 simulations are stopped,<br \/>\ngiving a very high 12% false positive rate!<\/span><\/div>\n<p><!--tex4ht:label?: x1-1002r2 -->\n   <\/div>\n<hr class=\"endfigure\" \/>\n<h4 class=\"likesubsectionHead\"><a \n id=\"x1-2000\"><\/a>The error-spending technique<\/h4>\n<p><!--l. 95--><\/p>\n<p class=\"noindent\" >They key idea of &#8220;Group Sequential&#8221; testing is that under the usual assumption that our test statistic<br \/>\nis normally distributed, it is possible to compute the false-positive probabilities at each stage exactly<br \/>\nusing dynamic programming. Since we can compute these probabilities, we can also adjust the<br \/>\ntest&#8217;s false-positive chance at every step so that the <span \nclass=\"ecti-1000\">total <\/span>false-positive rate is below the threshold<br \/>\n<!--l. 101--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>&#x03B1;<\/mi><\/math> we want. This is<br \/>\nknow as the error spending approach. Say we want to run the test daily for a 30 day experiment. We provide a 30 element sequence<br \/>\n<!--l. 103--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><msub><mrow \n><mi \n>&#x03B1;<\/mi><\/mrow><mrow \n><mi \n>i<\/mi><\/mrow><\/msub \n><\/math> of per step error chances,<br \/>\nwhich sums to less than say <!--l. 104--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>&#x03B1;<\/mi> <mo \nclass=\"MathClass-rel\">=<\/mo> <mn>0<\/mn><mo \nclass=\"MathClass-punc\">.<\/mo><mn>0<\/mn><mn>5<\/mn><\/math>.<br \/>\nUsing dynamic programming, we can then determine a sequence of thresholds, one per day, that we can use with the<br \/>\nstandard z-score test. The big advantage of this approach is that is a natural extension of the usual frequentist testing<br \/>\nparadigm.\n<\/p>\n<p><!--l. 110--><\/p>\n<p class=\"indent\" >   The error spending approach has a lot of flexibility, as the error chances can be distributed arbitrarily between the days.<br \/>\nSeveral standard allocations are commonly used in the research literature.\n<\/p>\n<p><!--l. 116--><\/p>\n<p class=\"indent\" >   Of course, libraries are available for computing these boundaries in several languages. Tables for the most common<br \/>\nsettings are also available. I&#8217;ve duplicated a few of these tables below for ease of reference.\n<\/p>\n<p><!--l. 122--><\/p>\n<p class=\"noindent\" >\n<h3 class=\"likesectionHead\"><a \n id=\"x1-3000\"><\/a>Recommended approach<\/h3>\n<p><!--l. 123--><\/p>\n<p class=\"noindent\" >\n<ol  class=\"enumerate1\" >\n<li \n  class=\"enumerate\" id=\"x1-3002x1\">Choose a <!--l. 124--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>&#x03B1;<\/mi><\/math>-spending<br \/>\n     function, from those discussed below. The Pocock approach is the simplest.\n     <\/li>\n<li \n  class=\"enumerate\" id=\"x1-3004x2\">Fix the maximum length of your experiment, and the number of times you wish to run the statistical test.<br \/>\n     I.e. daily for a 30 day experiment.\n     <\/li>\n<li \n  class=\"enumerate\" id=\"x1-3006x3\">Lookup on the tables below, or calculate using the <span \nclass=\"ectt-1000\">ldbounds <\/span>or <span \nclass=\"ectt-1000\">GroupSeq <\/span>R packages, the <!--l. 129--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>z<\/mi><\/math>-score<br \/>\n     thresholds for each of the tests you will run. For example, for the Pocock approach, <!--l. 130--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>&#x03B1;<\/mi> <mo \nclass=\"MathClass-rel\">=<\/mo> <mn>0<\/mn><mo \nclass=\"MathClass-punc\">.<\/mo><mn>0<\/mn><mn>1<\/mn><\/math>,<br \/>\n     10 tests max, use <!--l. 131--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>z<\/mi> <mo \nclass=\"MathClass-rel\">=<\/mo> <mn>3<\/mn><mo \nclass=\"MathClass-punc\">.<\/mo><mn>1<\/mn><mn>1<\/mn><mn>7<\/mn><\/math><br \/>\n     for every test. For the O&#8217;brien-Fleming approach it will be the sequence <!--l. 132--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mrow ><mo \nclass=\"MathClass-open\">{<\/mo><mrow><mn>8<\/mn><mo \nclass=\"MathClass-punc\">,<\/mo><mn>5<\/mn><mo \nclass=\"MathClass-punc\">.<\/mo><mn>8<\/mn><mn>2<\/mn><mo \nclass=\"MathClass-punc\">,<\/mo><mn>4<\/mn><mo \nclass=\"MathClass-punc\">.<\/mo><mn>9<\/mn><mn>5<\/mn><mo \nclass=\"MathClass-punc\">,<\/mo><mn>4<\/mn><mo \nclass=\"MathClass-punc\">.<\/mo><mn>2<\/mn><mn>9<\/mn><mo \nclass=\"MathClass-punc\">,<\/mo><mn>3<\/mn><mo \nclass=\"MathClass-punc\">.<\/mo><mn>8<\/mn><mo \nclass=\"MathClass-punc\">,<\/mo><mn>3<\/mn><mo \nclass=\"MathClass-punc\">.<\/mo><mn>4<\/mn><mn>6<\/mn><mo \nclass=\"MathClass-punc\">,<\/mo><mn>3<\/mn><mo \nclass=\"MathClass-punc\">.<\/mo><mn>1<\/mn><mn>9<\/mn><mo \nclass=\"MathClass-punc\">,<\/mo><mn>2<\/mn><mo \nclass=\"MathClass-punc\">.<\/mo><mn>9<\/mn><mn>8<\/mn><mo \nclass=\"MathClass-punc\">,<\/mo><mn>2<\/mn><mo \nclass=\"MathClass-punc\">.<\/mo><mn>8<\/mn><mn>0<\/mn><mo \nclass=\"MathClass-punc\">,<\/mo><mn>2<\/mn><mo \nclass=\"MathClass-punc\">.<\/mo><mn>6<\/mn><mn>6<\/mn><\/mrow><mo \nclass=\"MathClass-close\">}<\/mo><\/mrow><mo \nclass=\"MathClass-punc\">.<\/mo><\/math>\n     <\/li>\n<li \n  class=\"enumerate\" id=\"x1-3008x4\">Start the experiment.\n     <\/li>\n<li \n  class=\"enumerate\" id=\"x1-3010x5\">For each test during the course of experiment, compute the <!--l. 134--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>z<\/mi><\/math>-score<br \/>\n     to the threshold, and optionally stop the test if the score exceeds the threshold given in the lookup table.<\/li>\n<\/ol>\n<p><!--l. 139--><\/p>\n<p class=\"noindent\" >\n<h3 class=\"likesectionHead\"><a \n id=\"x1-4000\"><\/a>Real valued example<\/h3>\n<p><!--l. 141--><\/p>\n<p class=\"noindent\" >The simplest case of A\/B testing is when each observation for each user is a numerical value, such<br \/>\nas a count of activity that day, the sales total, or some other usage statistic. In this case the<br \/>\n<!--l. 143--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>z<\/mi><\/math>-score when<br \/>\nwe have <!--l. 144--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><msub><mrow \n><mi \n>n<\/mi><\/mrow><mrow \n><mi \n>a<\/mi><\/mrow><\/msub \n><\/math> data<br \/>\npoints from group <!--l. 144--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>a<\/mi><\/math><br \/>\nand <!--l. 144--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><msub><mrow \n><mi \n>n<\/mi><\/mrow><mrow \n><mi \n>b<\/mi><\/mrow><\/msub \n><\/math> from group<br \/>\n<!--l. 145--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>b<\/mi><\/math> with means and<br \/>\nstandard deviations <!--l. 145--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>&#x03BC;<\/mi><\/math><br \/>\nand <!--l. 145--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>&#x03C3;<\/mi><\/math><br \/>\nis:\n<\/p>\n<div class=\"math-display\"><!--l. 147--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"block\" ><mrow \n>\n                                                                <mi \n>z<\/mi> <mo \nclass=\"MathClass-rel\">=<\/mo>   <mfrac><mrow \n> <mfenced separators=\"\" \nopen=\"|\"  close=\"|\" ><mrow><msub><mrow \n><mi \n>&#x03BC;<\/mi><\/mrow><mrow \n><mi \n>a<\/mi><\/mrow><\/msub \n> <mo \nclass=\"MathClass-bin\">&#8211;<\/mo> <msub><mrow \n><mi \n>&#x03BC;<\/mi><\/mrow><mrow \n><mi \n>b<\/mi><\/mrow><\/msub \n><\/mrow><\/mfenced> <\/mrow> \n<mrow \n><msqrt><mrow><mfrac><mrow \n><msubsup><mrow \n><mi \n>&#x03C3;<\/mi><\/mrow><mrow \n><mi \n>a<\/mi> <\/mrow> <mrow \n>  <mn>2<\/mn> <\/mrow> <\/msubsup \n><\/mrow> \n <mrow \n><msub><mrow \n><mi \n>n<\/mi><\/mrow><mrow \n><mi \n>a<\/mi><\/mrow><\/msub \n><\/mrow><\/mfrac>  <mo \nclass=\"MathClass-bin\">+<\/mo> <mfrac><mrow \n><msubsup><mrow \n><mi \n>&#x03C3;<\/mi><\/mrow><mrow \n><mi \n>b<\/mi><\/mrow><mrow \n><mn>2<\/mn><\/mrow><\/msubsup \n><\/mrow> \n <mrow \n><msub><mrow \n><mi \n>n<\/mi><\/mrow><mrow \n><mi \n>b<\/mi><\/mrow><\/msub \n><\/mrow><\/mfrac><\/mrow><\/msqrt> <\/mrow><\/mfrac><mo \nclass=\"MathClass-punc\">,<\/mo>\n<\/mrow><\/math><\/div>\n<p><!--l. 149--><\/p>\n<p class=\"nopar\" >\n<p><!--l. 152--><\/p>\n<p class=\"indent\" >   For the <!--l. 152--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>k<\/mi><\/math>th trial,<br \/>\njust compare the <!--l. 152--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>z<\/mi><\/math><br \/>\nvalue here to the <!--l. 152--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>k<\/mi><\/math>th<br \/>\nthreshold from the appropriate table below, if it exceeds it you may stop the experiment.\n<\/p>\n<p><!--l. 157--><\/p>\n<p class=\"noindent\" >\n<h3 class=\"likesectionHead\"><a \n id=\"x1-5000\"><\/a>Conversions example<\/h3>\n<p><!--l. 159--><\/p>\n<p class=\"noindent\" >If in our A\/B test we are testing if the click through rate or purchase chance improves, we use a slightly different formula. Let<br \/>\n<!--l. 160--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>p<\/mi><\/math> be the click through<br \/>\nproportions and <!--l. 161--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>n<\/mi><\/math> the<br \/>\ntotal views (i.e. <!--l. 161--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><msub><mrow \n><mi \n>n<\/mi><\/mrow><mrow \n><mi \n>a<\/mi><\/mrow><\/msub \n><msub><mrow \n><mi \n>p<\/mi><\/mrow><mrow \n><mi \n>a<\/mi><\/mrow><\/msub \n> <mo \nclass=\"MathClass-rel\">=<\/mo><\/math>conversions<br \/>\nin group <!--l. 162--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>A<\/mi><\/math>).<br \/>\nThen\n<\/p>\n<div class=\"math-display\"><!--l. 163--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"block\" ><mrow \n>\n                                                    <mi \n>z<\/mi> <mo \nclass=\"MathClass-rel\">=<\/mo>                <mfrac><mrow \n> <mfenced separators=\"\" \nopen=\"|\"  close=\"|\" ><mrow><msub><mrow \n><mi \n>p<\/mi><\/mrow><mrow \n><mi \n>a<\/mi><\/mrow><\/msub \n> <mo \nclass=\"MathClass-bin\">&#8211;<\/mo> <msub><mrow \n><mi \n>p<\/mi><\/mrow><mrow \n><mi \n>b<\/mi><\/mrow><\/msub \n><\/mrow><\/mfenced> <\/mrow> \n<mrow \n><msqrt><mrow> <mfrac> <mrow \n> <mn>1<\/mn><\/mrow>\n<mrow \n><msub><mrow \n><mi \n>n<\/mi><\/mrow><mrow \n><mi \n>a<\/mi><\/mrow><\/msub \n><\/mrow><\/mfrac><msub><mrow \n><mi \n>p<\/mi><\/mrow><mrow \n><mi \n>a<\/mi><\/mrow><\/msub \n><mrow ><mo \nclass=\"MathClass-open\">(<\/mo><mrow><mn>1<\/mn> <mo \nclass=\"MathClass-bin\">&#8211;<\/mo> <msub><mrow \n><mi \n>p<\/mi><\/mrow><mrow \n><mi \n>a<\/mi><\/mrow><\/msub \n><\/mrow><mo \nclass=\"MathClass-close\">)<\/mo><\/mrow> <mo \nclass=\"MathClass-bin\">+<\/mo>  <mfrac><mrow \n><mn>1<\/mn><\/mrow> \n<mrow \n><msub><mrow \n><mi \n>n<\/mi><\/mrow><mrow \n><mi \n>b<\/mi><\/mrow><\/msub \n><\/mrow><\/mfrac><msub><mrow \n><mi \n>p<\/mi><\/mrow><mrow \n><mi \n>b<\/mi><\/mrow><\/msub \n><mrow ><mo \nclass=\"MathClass-open\">(<\/mo><mrow><mn>1<\/mn> <mo \nclass=\"MathClass-bin\">&#8211;<\/mo> <msub><mrow \n><mi \n>p<\/mi><\/mrow><mrow \n><mi \n>b<\/mi><\/mrow><\/msub \n><\/mrow><mo \nclass=\"MathClass-close\">)<\/mo><\/mrow><\/mrow><\/msqrt><\/mrow><\/mfrac><mo \nclass=\"MathClass-punc\">.<\/mo>\n<\/mrow><\/math><\/div>\n<p><!--l. 165--><\/p>\n<p class=\"nopar\" >\n<p><!--l. 168--><\/p>\n<p class=\"indent\" >   As above, for the <!--l. 168--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>k<\/mi><\/math>th<br \/>\ntrial, just compare the <!--l. 168--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>z<\/mi><\/math>value<br \/>\nhere to the <!--l. 169--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>k<\/mi><\/math>th<br \/>\nrow of the appropriate table below, if it exceeds it you may stop the experiment.<\/p>\n<p><!--l. 173--><\/p>\n<p class=\"noindent\" >\n<h3 class=\"likesectionHead\"><a \n id=\"x1-6000\"><\/a>Assumptions<\/h3>\n<ul class=\"itemize1\">\n<li class=\"itemize\">We  are  assuming  the  distribution  of  test  statistic  is  normally  distributed,  with  known  variance.  If  you<br \/>\n     did STATS101, you are probably ok with this assumption, but those of you who did STATS102 are no<br \/>\n     doubt objecting. Shouldn&#8217;t you be using a t-test or chi-square test? What about the exact binomial test for<br \/>\n     conversions? The fact is that unless you are getting only a tiny amount of data between tests, you just don&#8217;t<br \/>\n     need to worry about this. If you are getting tiny amounts of data, you can&#8217;t hope to pick up any difference<br \/>\n     between the A\/B groups over short time scales. Just run your test less regularly! <br \nclass=\"newline\" \/>The effect sizes we hope to see in A\/B testing are much smaller than those in other areas of statistics such<br \/>\n     as clinical trials, so we usually can&#8217;t expect to get statistical significance in the small data regime where the<br \/>\n     normality approximation brakes down.\n     <\/li>\n<li class=\"itemize\">Fixed maximum experiment length. This is an annoying problem. Often we would like to just keep running the<br \/>\n     experiment until we get some sort of effect. The difficulty is that we have to spread the chance of false-positives<br \/>\n     across the duration of the experiment. We could potentially use a error-spending function that drops off<br \/>\n     rapidly, so that the total error probability is summable. However, I would not recommend this. Instead, do a<br \/>\n     power calculation to determine the length of the experiment needed to pick up the minimum effect size that<br \/>\n     you would care about in practice. Then you can use that length for the experiment. <br \nclass=\"newline\" \/>In practice you will always see some sort of effect\/uplift if you run a long enough experiment. There is no real<br \/>\n     world situation where the A\/B groups behave exactly the same.\n     <\/li>\n<li class=\"itemize\">Equally distributed tests. We are assuming above that we have the exact same amount of data gathered between tests.<br \/>\n     Fortunately this assumption is not too crucial to the correctness of the test. It is actually quite easy to correct for<br \/>\n     differing intervals using the R software discussed. Say you are in the common situation where you see much less<br \/>\n     data over the weekend than for a weekday. The <span \nclass=\"ectt-1000\">ldbounds <\/span>R package lets you calculate the sequence of<br \/>\n     <!--l. 207--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>z<\/mi><\/math>-score<br \/>\n     boundaries for variable intervals. you just feed in the time between tests as a normalized sequence that sums to<br \/>\n     <!--l. 209--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mn>1<\/mn><\/math>.<br \/>\n     For example, for a 7 day experiment starting on Monday, where the expected volume of data is half on Saturday and<br \/>\n     Sunday, you would just use something like:<br \nclass=\"newline\" \/><!--l. 212--><\/p>\n<div class=\"lstlisting\" id=\"listing-1\"><span class=\"label\"><a \n id=\"x1-6001r1\"><\/a><\/span><span \nclass=\"ecrm-0800\">b<\/span><span \nclass=\"ecrm-0800\">&#x00A0;<\/span><span \nclass=\"ecrm-0800\">&#x003C;<\/span><span \nclass=\"cmsy-8\">&#8211;<\/span><span \nclass=\"ecrm-0800\">&#x00A0;<\/span><span \nclass=\"ecrm-0800\">bounds<\/span><span \nclass=\"ecrm-0800\">(<\/span><span \nclass=\"ecrm-0800\">cumsum<\/span><span \nclass=\"ecrm-0800\">(<\/span><span \nclass=\"ecrm-0800\">c<\/span><span \nclass=\"ecrm-0800\">(<\/span><span \nclass=\"ecrm-0800\">rep<\/span><span \nclass=\"ecrm-0800\">(1\/6,<\/span><span \nclass=\"ecrm-0800\">&#x00A0;<\/span><span \nclass=\"ecrm-0800\">5),<\/span><span \nclass=\"ecrm-0800\">&#x00A0;<\/span><span \nclass=\"ecrm-0800\">1\/12,<\/span><span \nclass=\"ecrm-0800\">&#x00A0;<\/span><span \nclass=\"ecrm-0800\">1\/12)),<\/span><span \nclass=\"ecrm-0800\">&#x00A0;<\/span><span \nclass=\"ecrm-0800\">iuse<\/span><span \nclass=\"ecrm-0800\">=<\/span><span \nclass=\"ecrm-0800\">c<\/span><span \nclass=\"ecrm-0800\">(1,<\/span><span \nclass=\"ecrm-0800\">&#x00A0;<\/span><span \nclass=\"ecrm-0800\">1),<\/span><span \nclass=\"ecrm-0800\">&#x00A0;<\/span><span \nclass=\"ecrm-0800\">alpha<\/span><span \nclass=\"ecrm-0800\">=<\/span><span \nclass=\"ecrm-0800\">c<\/span><span \nclass=\"ecrm-0800\">(0.025,<\/span><span \nclass=\"ecrm-0800\">&#x00A0;<\/span><span \nclass=\"ecrm-0800\">0.025))<\/span><span \nclass=\"ecrm-0800\">&#x00A0;<\/span><br \/><span class=\"label\"><a \n id=\"x1-6002r2\"><\/a><\/span><span \nclass=\"ecrm-0800\">print<\/span><span \nclass=\"ecrm-0800\">(<\/span><span \nclass=\"ecrm-0800\">b$upper<\/span><span \nclass=\"ecrm-0800\">.<\/span><span \nclass=\"ecrm-0800\">bounds<\/span><span \nclass=\"ecrm-0800\">)<\/span><span \nclass=\"ecrm-0800\">&#x00A0;<\/span><br \/><span class=\"label\"><a \n id=\"x1-6003r3\"><\/a><\/span><span \nclass=\"ecrm-0800\">[1]<\/span><span \nclass=\"ecrm-0800\">&#x00A0;<\/span><span \nclass=\"ecrm-0800\">5.366558<\/span><span \nclass=\"ecrm-0800\">&#x00A0;<\/span><span \nclass=\"ecrm-0800\">3.710552<\/span><span \nclass=\"ecrm-0800\">&#x00A0;<\/span><span \nclass=\"ecrm-0800\">2.969718<\/span><span \nclass=\"ecrm-0800\">&#x00A0;<\/span><span \nclass=\"ecrm-0800\">2.538649<\/span><span \nclass=\"ecrm-0800\">&#x00A0;<\/span><span \nclass=\"ecrm-0800\">2.252156<\/span><span \nclass=\"ecrm-0800\">&#x00A0;<\/span><span \nclass=\"ecrm-0800\">2.178169<\/span><span \nclass=\"ecrm-0800\">&#x00A0;<\/span><span \nclass=\"ecrm-0800\">2.088238<\/span>\n     <\/div>\n<p>     <!--l. 217--><\/p>\n<p class=\"noindent\" >The <span \nclass=\"ectt-1000\">iuse <\/span>argument controls the <!--l. 217--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>&#x03B1;<\/mi><\/math><br \/>\n     spending function used (here we used the O&#8217;Brien-Fleming approach) and <span \nclass=\"ectt-1000\">alpha <\/span>gives the false-positive rate on either side (we<br \/>\n     are doing a <!--l. 219--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mn>0<\/mn><mo \nclass=\"MathClass-punc\">.<\/mo><mn>0<\/mn><mn>5<\/mn><\/math><br \/>\n     fpr two-sided test here).\n     <\/p>\n<\/li>\n<li class=\"itemize\">Two-sided tests. The approach described above is that of a two-sided test. I allow for the effect of the<br \/>\n     intervention to be both potentially positive and negative. This is obviously more conservative then<br \/>\n     assuming it can only be positive, but I think in practice you should always use two-sided tests for A\/B<br \/>\n     experiments. It&#8217;s hard to justify the assumption that the intervention <span \nclass=\"ecti-1000\">can&#8217;t possibly <\/span>have a negative<br \/>\n     effect!\n     <\/li>\n<li class=\"itemize\">Why should I use this approach when Wald&#8217;s SPRT test is optimal? Wald&#8217;s theory of sequential testing is based<br \/>\n     around testing a single point hypothesis against another point hypothesis. While this approach is nearly as good as is<br \/>\n     possible for the simple point-point case, there is no clear generalization to the case of testing a point<br \/>\n     hypothesis of zero effect against the &#8220;composite&#8221; hypothesis of non-zero effect. In Wald&#8217;s 1945 book,<br \/>\n     several approaches are suggested, but they have known deficiencies [Sec 5.2&#x00A0;<a \nhref=\"#Xgreen-book\">Tartakovsky et&#x00A0;al.<\/a>,&#x00A0;<a \nhref=\"#Xgreen-book\">2013<\/a>].<br \/>\n     Lordon&#8217;s 2-SPRT [<a \nhref=\"#Xlordon\">Lordon<\/a>,&#x00A0;<a \nhref=\"#Xlordon\">1976<\/a>] is the modern SPRT variant that is most commonly used. It requires<br \/>\n     setting an indifference region around 0 instead of a fixing the measurement points in advance, so the<br \/>\n     experimental design decisions are a little different. I intend to write more about the 2-SPRT in the<br \/>\n     future.<\/li>\n<\/ul>\n<p><!--l. 243--><\/p>\n<p class=\"noindent\" >\n<h4 class=\"likesubsectionHead\"><a \n id=\"x1-7000\"><\/a>Bayesian approaches<\/h4>\n<p><!--l. 245--><\/p>\n<p class=\"noindent\" >Some people attempt to perform Bayesian tests by putting a prior on their data and computing &#8220;credible intervals&#8221; (or<br \/>\nequivalently posterior probabilities) instead of confidence intervals. The classical &#8220;likelihood principle&#8221; states that Bayesian<br \/>\nstatistical quantities do not change under sequential testing, however under the Bayesian methodology estimation is<br \/>\nfundamentally different from hypothesis testing, and trying to convert interval estimates to tests doesn&#8217;t work. The intuition<br \/>\nis fairly simple: If Bayesian tests are immune to the sequential testing problem but Frequentist tests are not, then<br \/>\ntechniques like credible intervals which agree with frequentist confidence intervals on simple problems can&#8217;t then be used for<br \/>\nBayesian tests.\n<\/p>\n<p><!--l. 257--><\/p>\n<p class=\"indent\" >   In general the best approach is to combine the Bayesian estimates with decision theory. This involves<br \/>\nassigning a cost to each datapoint gathered, as well as determining the cost due to the test coming to the wrong<br \/>\nsolution.\n<\/p>\n<p><!--l. 262--><\/p>\n<p class=\"indent\" >   I&#8217;m a strong proponent of Bayesian statistics, but I find it next to impossible in practice to determine these two costs.<br \/>\nThe frequentist approach of controlling false-positive rates is much easy to apply in a business context. The<br \/>\nmain exception is for per-user personalization or advert placement where the business decisions have to be<br \/>\nmade automatically. In that case the techniques studied for multi-arm Bandits or contextual bandits are<br \/>\nnatural automatic applications of the decision theory approach. They are far outside the scope of this post<br \/>\nhowever.\n<\/p>\n<p><!--l. 272--><\/p>\n<p class=\"noindent\" >\n<h4 class=\"likesubsectionHead\"><a \n id=\"x1-8000\"><\/a>The other Bayesian approach<\/h4>\n<p><!--l. 274--><\/p>\n<p class=\"noindent\" >The most commonly suggested Bayesian approach is the Bayes Factor (BF) test, a potential drop in replacement for<br \/>\nfrequentist tests. Indeed, A. Wald (the progenitor of sequential testing) way back in his 1945 book suggests a similar<br \/>\napproach to a BF test [Sec. 4.1.3,&#x00A0;<a \nhref=\"#Xwald1945\">Wald<\/a>,&#x00A0;<a \nhref=\"#Xwald1945\">1945<\/a>].\n<\/p>\n<p><!--l. 279--><\/p>\n<p class=\"indent\" >   Unfortunately the bayes factor test often gives counter-intuitive and sometimes radically different results from<br \/>\nfrequentist tests. This is known as Lindley&#8217;s paradox [<a \nhref=\"#Xlindley\">Lindley<\/a>,&#x00A0;<a \nhref=\"#Xlindley\">1957<\/a>]. This doesn&#8217;t invalidate BF results, but you do need to<br \/>\nfully understand the implications to use them in practice. I intend to write a another post going into detail about bayes<br \/>\nfactor tests, and their pitfalls and advantages over frequentist approaches.\n<\/p>\n<p><!--l. 288--><\/p>\n<p class=\"noindent\" >\n<h3 class=\"likesectionHead\"><a \n id=\"x1-9000\"><\/a>Interactive tool<\/h3>\n<p><!--l. 290--><\/p>\n<p class=\"noindent\" >The <span \nclass=\"ectt-1000\">GroupSeq <\/span>R package provides a very easy to use GUI for calculating the stopping boundaries for most of the above<br \/>\nsettings. It can also do power calculations and stopping intervals. I&#8217;ve put a few screenshots of it in action<br \/>\nbelow.\n<\/p>\n<p><!--l. 295--><\/p>\n<p class=\"indent\" >   <img \nsrc=\"groupseq1.png\" alt=\"PIC\"  \n \/>\n        <\/p>\n<div class=\"quotation\">\n<p>     <!--l. 297--><\/p>\n<p class=\"indent\" >     <img \nsrc=\"groupseq2.png\" alt=\"PIC\"  \n \/><\/p>\n<\/div>\n<p><!--l. 300--><\/p>\n<p class=\"noindent\" >\n<h3 class=\"likesectionHead\"><a \n id=\"x1-10000\"><\/a>Power calculations<\/h3>\n<p><!--l. 302--><\/p>\n<p class=\"noindent\" >Powe calculations are typically used with frequentist experiments to determine the length of the experiment required to pick up<br \/>\neffects of a certain magnitude. Power calculations can still be done for group sequential tests, using the R tools mentioned above. Like<br \/>\nwith the <!--l. 306--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>z<\/mi><\/math>-score<br \/>\nboundary calculations, multiple integrals need to be evaluated numerically, so it is somewhat of a black-box.\n<\/p>\n<p><!--l. 309--><\/p>\n<p class=\"indent\" >   Power calculations can also be used to select from the various error spending approaches above. Just run<br \/>\nthe power calculation for each approach, then choose the one that gives the smallest required experiment<br \/>\nlength.\n<\/p>\n<p><!--l. 315--><\/p>\n<p class=\"noindent\" >\n<h3 class=\"likesectionHead\"><a \n id=\"x1-11000\"><\/a><a \nhref=\"#Xpocock\">Pocock<\/a>&#x00A0;<a \nhref=\"#Xpocock\">1977<\/a> tables (for two sided tests)<\/h3>\n<p><!--l. 317--><\/p>\n<p class=\"noindent\" >Pocock&#8217;s approach uses the <span \nclass=\"ectt-1000\">exact same <\/span><!--l. 318--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>z<\/mi><\/math><span \nclass=\"ectt-1000\">-score<\/span><br \/>\n<span \nclass=\"ectt-1000\">threshold at every test<\/span>. Values for larger <!--l. 318--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>N<\/mi><\/math><br \/>\n(the total number of tests) or irregularly spaced test intervals may be calculated using the <span \nclass=\"ectt-1000\">GroupSeq <\/span>R package. The test<br \/>\n<!--l. 320--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>&#x03B1;<\/mi><\/math> values here<br \/>\nillustrated how much more conservative you need to be. For example, when running 10 tests during the experiment, you effectively<br \/>\nhave to run a <!--l. 322--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>z<\/mi><\/math>-test<br \/>\nat the <!--l. 322--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>&#x03B1;<\/mi> <mo \nclass=\"MathClass-rel\">=<\/mo> <mn>0<\/mn><mo \nclass=\"MathClass-punc\">.<\/mo><mn>0<\/mn><mn>1<\/mn><\/math> level to<br \/>\nget an effective <!--l. 323--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mn>0<\/mn><mo \nclass=\"MathClass-punc\">.<\/mo><mn>0<\/mn><mn>5<\/mn><\/math><br \/>\nfalse positive rate.\n<\/p>\n<div class=\"tabular\">\n<table id=\"TBL-2\" class=\"tabular\" \ncellspacing=\"0\" cellpadding=\"0\" rules=\"groups\" \n><\/p>\n<colgroup id=\"TBL-2-1g\">\n<col \nid=\"TBL-2-1\" \/><\/colgroup>\n<colgroup id=\"TBL-2-2g\">\n<col \nid=\"TBL-2-2\" \/><\/colgroup>\n<colgroup id=\"TBL-2-3g\">\n<col \nid=\"TBL-2-3\" \/><\/colgroup>\n<colgroup id=\"TBL-2-4g\">\n<col \nid=\"TBL-2-4\" \/><\/colgroup>\n<colgroup id=\"TBL-2-5g\">\n<col \nid=\"TBL-2-5\" \/><\/colgroup>\n<tr \nclass=\"hline\"><\/p>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-2-1-\"><\/p>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-1-1\"  \nclass=\"td11\">                                                                                                 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-1-2\"  \nclass=\"td11\"> For <!--l. 327--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>&#x03B1;<\/mi> <mo \nclass=\"MathClass-rel\">=<\/mo> <mn>0<\/mn><mo \nclass=\"MathClass-punc\">.<\/mo><mn>0<\/mn><mn>5<\/mn><\/math>  <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-1-3\"  \nclass=\"td11\">                                                                                                      <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-1-4\"  \nclass=\"td11\"> For <!--l. 327--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>&#x03B1;<\/mi> <mo \nclass=\"MathClass-rel\">=<\/mo> <mn>0<\/mn><mo \nclass=\"MathClass-punc\">.<\/mo><mn>0<\/mn><mn>1<\/mn><\/math>  <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-1-5\"  \nclass=\"td11\">                                                                                                      <\/td>\n<\/tr>\n<tr \nclass=\"hline\"><\/p>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-2-2-\"><\/p>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-2-1\"  \nclass=\"td11\"> <!--l. 329--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>N<\/mi><\/math> <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-2-2\"  \nclass=\"td11\"> test <!--l. 329--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>&#x03B1;<\/mi><\/math> <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-2-3\"  \nclass=\"td11\"> <!--l. 329--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>z<\/mi><\/math>-score <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-2-4\"  \nclass=\"td11\"> test <!--l. 329--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>&#x03B1;<\/mi><\/math> <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-2-5\"  \nclass=\"td11\"> <!--l. 329--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>z<\/mi><\/math>-score<\/td>\n<\/tr>\n<tr \nclass=\"hline\"><\/p>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<\/tr>\n<tr \nclass=\"hline\"><\/p>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-2-3-\"><\/p>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-3-1\"  \nclass=\"td11\">                                                1                                                                            <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-3-2\"  \nclass=\"td11\">                                                 0.05                                                                             <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-3-3\"  \nclass=\"td11\">                                                 1.960                                                                             <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-3-4\"  \nclass=\"td11\">                                                 0.01                                                                             <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-3-5\"  \nclass=\"td11\">                                                 2.576                                                                             <\/td>\n<\/tr>\n<tr \nclass=\"hline\"><\/p>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-2-4-\"><\/p>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-4-1\"  \nclass=\"td11\"> 2 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-4-2\"  \nclass=\"td11\"> 0.0294 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-4-3\"  \nclass=\"td11\"> 2.178 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-4-4\"  \nclass=\"td11\"> 0.0056 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-4-5\"  \nclass=\"td11\"> 2.772<\/td>\n<\/tr>\n<tr \nclass=\"hline\"><\/p>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-2-5-\"><\/p>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-5-1\"  \nclass=\"td11\">                                                3                                                                            <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-5-2\"  \nclass=\"td11\">                                                0.0221                                                                            <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-5-3\"  \nclass=\"td11\">                                                 2.289                                                                             <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-5-4\"  \nclass=\"td11\">                                                0.0041                                                                            <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-5-5\"  \nclass=\"td11\">                                                 2.873                                                                             <\/td>\n<\/tr>\n<tr \nclass=\"hline\"><\/p>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-2-6-\"><\/p>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-6-1\"  \nclass=\"td11\"> 4 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-6-2\"  \nclass=\"td11\"> 0.0182 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-6-3\"  \nclass=\"td11\"> 2.361 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-6-4\"  \nclass=\"td11\"> 0.0033 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-6-5\"  \nclass=\"td11\"> 2.939<\/td>\n<\/tr>\n<tr \nclass=\"hline\"><\/p>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-2-7-\"><\/p>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-7-1\"  \nclass=\"td11\">                                                5                                                                            <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-7-2\"  \nclass=\"td11\">                                                0.0158                                                                            <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-7-3\"  \nclass=\"td11\">                                                 2.413                                                                             <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-7-4\"  \nclass=\"td11\">                                                0.0028                                                                            <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-7-5\"  \nclass=\"td11\">                                                 2.986                                                                             <\/td>\n<\/tr>\n<tr \nclass=\"hline\"><\/p>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-2-8-\"><\/p>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-8-1\"  \nclass=\"td11\"> 6 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-8-2\"  \nclass=\"td11\"> 0.0142 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-8-3\"  \nclass=\"td11\"> 2.453 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-8-4\"  \nclass=\"td11\"> 0.0025 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-8-5\"  \nclass=\"td11\"> 3.023<\/td>\n<\/tr>\n<tr \nclass=\"hline\"><\/p>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-2-9-\"><\/p>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-9-1\"  \nclass=\"td11\">                                                8                                                                            <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-9-2\"  \nclass=\"td11\">                                                0.0120                                                                            <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-9-3\"  \nclass=\"td11\">                                                 2.512                                                                             <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-9-4\"  \nclass=\"td11\">                                                0.0021                                                                            <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-9-5\"  \nclass=\"td11\">                                                 3.078                                                                             <\/td>\n<\/tr>\n<tr \nclass=\"hline\"><\/p>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-2-10-\"><\/p>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-10-1\"  \nclass=\"td11\"> 10 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-10-2\"  \nclass=\"td11\"> 0.0106 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-10-3\"  \nclass=\"td11\"> 2.555 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-10-4\"  \nclass=\"td11\"> 0.0018 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-10-5\"  \nclass=\"td11\"> 3.117<\/td>\n<\/tr>\n<tr \nclass=\"hline\"><\/p>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-2-11-\"><\/p>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-11-1\"  \nclass=\"td11\">                                                12                                                                           <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-11-2\"  \nclass=\"td11\">                                                0.0097                                                                            <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-11-3\"  \nclass=\"td11\">                                                 2.585                                                                             <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-11-4\"  \nclass=\"td11\">                                                0.0016                                                                            <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-11-5\"  \nclass=\"td11\">                                                 3.147                                                                             <\/td>\n<\/tr>\n<tr \nclass=\"hline\"><\/p>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-2-12-\"><\/p>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-12-1\"  \nclass=\"td11\"> 15 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-12-2\"  \nclass=\"td11\"> 0.0086 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-12-3\"  \nclass=\"td11\"> 2.626 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-12-4\"  \nclass=\"td11\"> 0.0015 <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-12-5\"  \nclass=\"td11\"> 3.182<\/td>\n<\/tr>\n<tr \nclass=\"hline\"><\/p>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-2-13-\"><\/p>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-13-1\"  \nclass=\"td11\">                                                20                                                                           <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-13-2\"  \nclass=\"td11\">                                                0.0075                                                                            <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-13-3\"  \nclass=\"td11\">                                                 2.672                                                                             <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-13-4\"  \nclass=\"td11\">                                                0.0013                                                                            <\/td>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-13-5\"  \nclass=\"td11\">                                                 3.224                                                                             <\/td>\n<\/tr>\n<tr \nclass=\"hline\"><\/p>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-2-14-\"><\/p>\n<td  style=\"text-align:center; white-space:nowrap;\" id=\"TBL-2-14-1\"  \nclass=\"td11\"> <\/td>\n<\/tr>\n<\/table>\n<\/div>\n<p><!--l. 357--><\/p>\n<p class=\"noindent\" >\n<h3 class=\"likesectionHead\"><a \n id=\"x1-12000\"><\/a>O&#8217;brien-Fleming style tables (for two sided tests)<\/h3>\n<p><!--l. 359--><\/p>\n<p class=\"noindent\" >This approach is essentially the most natural generalization of Wald&#8217;s SPRT test to the group-sequential case with<br \/>\ncomposite hypothesis. This test is much less likely to stop at the early stages of the test than the other approaches, but<br \/>\nmore likely to stop in the later tests. Instead of reporting the tables from their paper I give the stopping boundaries for a<br \/>\nversion of their approach [<a \nhref=\"#Xobf\">O&#8217;brien and Fleming<\/a>,&#x00A0;<a \nhref=\"#Xobf\">1979<\/a>] adapted to the error-spending algorithm implemented in the<br \/>\n<span \nclass=\"ectt-1000\">ldbounds <\/span>library.\n<\/p>\n<p><!--l. 368--><\/p>\n<p class=\"indent\" >   In the computation below we cap the <!--l. 368--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>z<\/mi><\/math>-score<br \/>\nstopping boundaries at <!--l. 369--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mn>8<\/mn><\/math>,<br \/>\nas this is the default for the <span \nclass=\"ectt-1000\">ldbounds <\/span>library.<br \/>\n<a \n id=\"x1-12001r1\"><\/a><\/p>\n<p>   <!--l. 373--><\/p>\n<div class=\"longtable\">\n<table id=\"TBL-3\" class=\"longtable\" \ncellspacing=\"0\" cellpadding=\"0\"  \n><\/p>\n<colgroup id=\"TBL-3-1g\">\n<col \nid=\"TBL-3-1\" \/><\/p>\n<col \nid=\"TBL-3-2\" \/><\/p>\n<col \nid=\"TBL-3-3\" \/><\/colgroup>\n<tr \nclass=\"hline\"><\/p>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-1-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-1-1\"  \nclass=\"td11\"> <!--l. 373--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>N<\/mi><\/math>  <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-1-2\"  \nclass=\"td11\"> <!--l. 373--><math \n xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"  \ndisplay=\"inline\" ><mi \n>&#x03B1;<\/mi><\/math>  <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-1-3\"  \nclass=\"td11\"><br \/>\n <!--l. 373--><\/p>\n<p class=\"noindent\" >z-scores<br \/>\n  (two-sided<br \/>\n  tests)                                                                                                                                                 <\/p>\n<\/td>\n<\/tr>\n<tr \nclass=\"hline\"><\/p>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-2-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-2-1\"  \nclass=\"td11\"> 1.00                                                                                                                                                   <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-2-2\"  \nclass=\"td11\"> 0.05                                                                                                                                                   <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-2-3\"  \nclass=\"td11\"><br \/>\n <!--l. 375--><\/p>\n<p class=\"noindent\" >1.96                                                                                                                                                   <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-3-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-3-1\"  \nclass=\"td11\"> 1.00                                                                                                                                                   <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-3-2\"  \nclass=\"td11\"> 0.01                                                                                                                                                   <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-3-3\"  \nclass=\"td11\"><br \/>\n <!--l. 376--><\/p>\n<p class=\"noindent\" >2.576                                                                                                                                                 <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-4-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-4-1\"  \nclass=\"td11\"> 2.00                                                                                                                                                   <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-4-2\"  \nclass=\"td11\"> 0.05                                                                                                                                                   <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-4-3\"  \nclass=\"td11\"><br \/>\n <!--l. 377--><\/p>\n<p class=\"noindent\" >2.963,1.969                                                                                                                                         <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-5-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-5-1\"  \nclass=\"td11\"> 2.00                                                                                                                                                   <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-5-2\"  \nclass=\"td11\"> 0.01                                                                                                                                                   <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-5-3\"  \nclass=\"td11\"><br \/>\n <!--l. 378--><\/p>\n<p class=\"noindent\" >3.801,2.578                                                                                                                                         <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-6-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-6-1\"  \nclass=\"td11\"> 3.00                                                                                                                                                   <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-6-2\"  \nclass=\"td11\"> 0.05                                                                                                                                                   <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-6-3\"  \nclass=\"td11\"><br \/>\n <!--l. 379--><\/p>\n<p class=\"noindent\" >3.710,2.511,1.993                                                                                                                                  <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-7-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-7-1\"  \nclass=\"td11\"> 3.00                                                                                                                                                   <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-7-2\"  \nclass=\"td11\"> 0.01                                                                                                                                                   <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-7-3\"  \nclass=\"td11\"><br \/>\n <!--l. 380--><\/p>\n<p class=\"noindent\" >4.723,3.246,2.589                                                                                                                                  <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-8-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-8-1\"  \nclass=\"td11\"> 4.00                                                                                                                                                   <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-8-2\"  \nclass=\"td11\"> 0.05                                                                                                                                                   <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-8-3\"  \nclass=\"td11\"><br \/>\n <!--l. 381--><\/p>\n<p class=\"noindent\" >4.333,2.963,2.359,2.014                                                                                                                          <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-9-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-9-1\"  \nclass=\"td11\"> 4.00                                                                                                                                                   <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-9-2\"  \nclass=\"td11\"> 0.01                                                                                                                                                   <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-9-3\"  \nclass=\"td11\"><br \/>\n <!--l. 382--><\/p>\n<p class=\"noindent\" >5.493,3.802,3.044,2.603                                                                                                                          <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-10-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-10-1\"  \nclass=\"td11\"> 5.00                                                                                                                                                   <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-10-2\"  \nclass=\"td11\"> 0.05                                                                                                                                                   <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-10-3\"  \nclass=\"td11\"><br \/>\n <!--l. 383--><\/p>\n<p class=\"noindent\" >4.877,3.357,2.680,2.290,2.031                                                                                                                  <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-11-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-11-1\"  \nclass=\"td11\"> 5.00                                                                                                                                                   <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-11-2\"  \nclass=\"td11\"> 0.01                                                                                                                                                   <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-11-3\"  \nclass=\"td11\"><br \/>\n <!--l. 384--><\/p>\n<p class=\"noindent\" >6.168,4.286,3.444,2.947,2.615                                                                                                                  <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-12-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-12-1\"  \nclass=\"td11\"> 6.00                                                                                                                                                   <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-12-2\"  \nclass=\"td11\"> 0.05                                                                                                                                                   <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-12-3\"  \nclass=\"td11\"><br \/>\n <!--l. 385--><\/p>\n<p class=\"noindent\" >5.367,3.711,2.970,2.539,2.252,2.045                                                                                                           <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-13-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-13-1\"  \nclass=\"td11\"> 6.00                                                                                                                                                   <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-13-2\"  \nclass=\"td11\"> 0.01                                                                                                                                                   <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-13-3\"  \nclass=\"td11\"><br \/>\n <!--l. 386--><\/p>\n<p class=\"noindent\" >6.776,4.740,3.803,3.257,2.892,2.626                                                                                                           <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-14-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-14-1\"  \nclass=\"td11\"> 8.00                                                                                                                                                   <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-14-2\"  \nclass=\"td11\"> 0.05                                                                                                                                                   <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-14-3\"  \nclass=\"td11\"><br \/>\n <!--l. 387--><\/p>\n<p class=\"noindent\" >6.232,4.331,3.481,2.980,2.644,2.401,2.215,2.066                                                                                           <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-15-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-15-1\"  \nclass=\"td11\"> 8.00                                                                                                                                                   <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-15-2\"  \nclass=\"td11\"> 0.01                                                                                                                                                   <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-15-3\"  \nclass=\"td11\"><br \/>\n <!--l. 388--><\/p>\n<p class=\"noindent\" >8.000,8.000,4.442,3.807,3.381,3.071,2.833,2.643                                                                                           <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-16-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-16-1\"  \nclass=\"td11\"> 10.00                                                                                                                                                 <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-16-2\"  \nclass=\"td11\"> 0.05                                                                                                                                                   <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-16-3\"  \nclass=\"td11\"><br \/>\n <!--l. 389--><\/p>\n<p class=\"noindent\" >6.991,4.899,3.930,3.367,2.989,2.715,2.504,2.336,2.197,2.081                                                                            <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-17-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-17-1\"  \nclass=\"td11\"> 10.00                                                                                                                                                 <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-17-2\"  \nclass=\"td11\"> 0.01                                                                                                                                                   <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-17-3\"  \nclass=\"td11\"><br \/>\n <!--l. 390--><\/p>\n<p class=\"noindent\" >8.000,8.000,5.071,4.289,3.812,3.463,3.195,2.981,2.804,2.656                                                                            <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-18-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-18-1\"  \nclass=\"td11\"> 15.00                                                                                                                                                 <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-18-2\"  \nclass=\"td11\"> 0.05                                                                                                                                                   <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-18-3\"  \nclass=\"td11\"><br \/>\n <!--l. 391--><\/p>\n<p class=\"noindent\" >8.000,8.000,4.900,4.189,3.722,3.382,3.120,2.910,2.738,2.593,\n  <\/p>\n<p><!--l. 393--><\/p>\n<p class=\"noindent\" >2.469,2.361,2.266,2.182,2.107                                                                                                                  <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-19-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-19-1\"  \nclass=\"td11\"> 15.00                                                                                                                                                 <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-19-2\"  \nclass=\"td11\"> 0.01                                                                                                                                                   <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-19-3\"  \nclass=\"td11\"><br \/>\n <!--l. 394--><\/p>\n<p class=\"noindent\" >8.000,8.000,8.000,8.000,4.731,4.295,3.964,3.699,3.481,3.297,\n  <\/p>\n<p><!--l. 396--><\/p>\n<p class=\"noindent\" >3.139,3.002,2.881,2.774,2.678                                                                                                                  <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-20-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-20-1\"  \nclass=\"td11\"> 20.00                                                                                                                                                 <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-20-2\"  \nclass=\"td11\"> 0.05                                                                                                                                                   <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-20-3\"  \nclass=\"td11\"><br \/>\n <!--l. 397--><\/p>\n<p class=\"noindent\" >8.000,8.000,8.000,4.916,4.337,3.942,3.638,3.394,3.193,3.024,\n  <\/p>\n<p><!--l. 399--><\/p>\n<p class=\"noindent\" >2.880,2.754,2.643,2.545,2.457,2.378,2.305,2.239,2.179,2.123                                                                            <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-21-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-21-1\"  \nclass=\"td11\">                                                                                                  <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-21-2\"  \nclass=\"td11\">                                                                                                  <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-21-3\"  \nclass=\"td11\"><\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-22-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-22-1\"  \nclass=\"td11\"> 20.00  <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-22-2\"  \nclass=\"td11\"> 0.01  <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-22-3\"  \nclass=\"td11\"><br \/>\n <!--l. 400--><\/p>\n<p class=\"noindent\" >8.000,8.000,8.000,8.000,8.000,5.076,4.615,4.302,4.050,3.837,\n  <\/p>\n<p><!--l. 402--><\/p>\n<p class=\"noindent\" >3.653,3.494,3.353,3.229,3.117,3.016,2.925,2.841,2.764,2.693                                                                            <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-23-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-23-1\"  \nclass=\"td11\"> 25.00  <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-23-2\"  \nclass=\"td11\"> 0.05  <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-23-3\"  \nclass=\"td11\"><br \/>\n <!--l. 403--><\/p>\n<p class=\"noindent\" >8.000,8.000,8.000,8.000,4.919,4.436,4.093,3.820,3.594,3.404,\n  <\/p>\n<p><!--l. 405--><\/p>\n<p class=\"noindent\" >3.241,3.100,2.975,2.865,2.766,2.676,2.595,2.521,2.452,2.389,\n  <\/p>\n<p><!--l. 407--><\/p>\n<p class=\"noindent\" >2.331,2.277,2.226,2.179,2.134                                                                                                                  <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-24-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-24-1\"  \nclass=\"td11\"> 25.00  <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-24-2\"  \nclass=\"td11\"> 0.01  <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-24-3\"  \nclass=\"td11\"><br \/>\n <!--l. 408--><\/p>\n<p class=\"noindent\" >8.000,8.000,8.000,8.000,8.000,8.000,5.517,4.878,4.565,4.315,\n  <\/p>\n<p><!--l. 410--><\/p>\n<p class=\"noindent\" >4.107,3.928,3.769,3.629,3.504,3.390,3.287,3.193,3.107,3.027,\n  <\/p>\n<p><!--l. 412--><\/p>\n<p class=\"noindent\" >2.953,2.884,2.820,2.760,2.703                                                                                                                  <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-25-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-25-1\"  \nclass=\"td11\"> 30.00  <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-25-2\"  \nclass=\"td11\"> 0.05  <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-25-3\"  \nclass=\"td11\"><br \/>\n <!--l. 413--><\/p>\n<p class=\"noindent\" >8.000,8.000,8.000,8.000,8.000,4.933,4.505,4.204,3.956,3.748,\n  <\/p>\n<p><!--l. 415--><\/p>\n<p class=\"noindent\" >3.568,3.413,3.276,3.154,3.045,2.946,2.857,2.775,2.700,2.631,\n  <\/p>\n<p><!--l. 417--><\/p>\n<p class=\"noindent\" >2.566,2.506,2.451,2.398,2.349,2.303,2.260,2.219,2.180,2.143                                                                            <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-26-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-26-1\"  \nclass=\"td11\"> 30.00  <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-26-2\"  \nclass=\"td11\"> 0.01  <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-26-3\"  \nclass=\"td11\"><br \/>\n <!--l. 418--><\/p>\n<p class=\"noindent\" >8.000,8.000,8.000,8.000,8.000,8.000,8.000,8.000,4.986,4.731,\n  <\/p>\n<p><!--l. 420--><\/p>\n<p class=\"noindent\" >4.510,4.318,4.144,3.991,3.853,3.728,3.615,3.512,3.416,3.329,\n  <\/p>\n<p><!--l. 422--><\/p>\n<p class=\"noindent\" >3.247,3.172,3.101,3.035,2.973,2.914,2.859,2.807,2.758,2.711                                                                            <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-27-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-27-1\"  \nclass=\"td11\"> 50.00  <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-27-2\"  \nclass=\"td11\"> 0.05  <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-27-3\"  \nclass=\"td11\"><br \/>\n <!--l. 423--><\/p>\n<p class=\"noindent\" >8.000,8.000,8.000,8.000,8.000,8.000,8.000,8.000,5.185,4.919,\n  <\/p>\n<p><!--l. 425--><\/p>\n<p class=\"noindent\" >4.669,4.454,4.279,4.118,3.976,3.848,3.731,3.625,3.526,3.436,\n  <\/p>\n<p><!--l. 427--><\/p>\n<p class=\"noindent\" >3.352,3.274,3.201,3.132,3.068,3.008,2.951,2.898,2.847,2.798,\n  <\/p>\n<p><!--l. 429--><\/p>\n<p class=\"noindent\" >2.752,2.709,2.667,2.627,2.589,2.552,2.517,2.484,2.452,2.421,\n  <\/p>\n<p><!--l. 431--><\/p>\n<p class=\"noindent\" >2.391,2.362,2.334,2.307,2.281,2.256,2.232,2.208,2.186,2.164                                                                            <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-28-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-28-1\"  \nclass=\"td11\"> 50.00  <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-28-2\"  \nclass=\"td11\"> 0.01  <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-28-3\"  \nclass=\"td11\"><br \/>\n <!--l. 432--><\/p>\n<p class=\"noindent\" >8.000,8.000,8.000,8.000,8.000,8.000,8.000,8.000,8.000,8.000,\n  <\/p>\n<p><!--l. 434--><\/p>\n<p class=\"noindent\" >8.000,8.000,8.000,8.000,5.173,4.938,4.739,4.589,4.452,4.339,\n  <\/p>\n<p><!--l. 436--><\/p>\n<p class=\"noindent\" >4.230,4.133,4.040,3.954,3.874,3.797,3.726,3.658,3.594,3.533,\n  <\/p>\n<p><!--l. 438--><\/p>\n<p class=\"noindent\" >3.475,3.419,3.367,3.316,3.268,3.222,3.178,3.135,3.095,3.055,\n  <\/p>\n<p><!--l. 440--><\/p>\n<p class=\"noindent\" >3.018,2.981,2.946,2.912,2.880,2.848,2.817,2.788,2.759,2.731                                                                            <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-29-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-29-1\"  \nclass=\"td11\"> 60.00  <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-29-2\"  \nclass=\"td11\"> 0.05  <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-29-3\"  \nclass=\"td11\"><br \/>\n <!--l. 441--><\/p>\n<p class=\"noindent\" >8.000,8.000,8.000,8.000,8.000,8.000,8.000,8.000,8.000,8.000,\n  <\/p>\n<p><!--l. 443--><\/p>\n<p class=\"noindent\" >5.292,4.977,4.718,4.525,4.372,4.229,4.101,3.984,3.876,3.776,\n  <\/p>\n<p><!--l. 445--><\/p>\n<p class=\"noindent\" >3.684,3.598,3.518,3.443,3.373,3.307,3.244,3.185,3.129,3.076,\n  <\/p>\n<p><!--l. 447--><\/p>\n<p class=\"noindent\" >3.025,2.977,2.932,2.888,2.846,2.806,2.767,2.730,2.695,2.661,\n  <\/p>\n<p><!--l. 449--><\/p>\n<p class=\"noindent\" >2.628,2.596,2.566,2.536,2.508,2.480,2.453,2.427,2.402,2.378,\n  <\/p>\n<p><!--l. 451--><\/p>\n<p class=\"noindent\" >2.355,2.332,2.309,2.288,2.267,2.246,2.227,2.207,2.188,2.170                                                                            <\/p>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-30-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-30-1\"  \nclass=\"td11\"> 60.00  <\/td>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-30-2\"  \nclass=\"td11\"> 0.01  <\/td>\n<td  style=\"text-align:left;\" id=\"TBL-3-30-3\"  \nclass=\"td11\"><br \/>\n <!--l. 452--><\/p>\n<p class=\"noindent\" >8.000,8.000,8.000,8.000,8.000,8.000,8.000,8.000,8.000,8.000,\n  <\/p>\n<p><!--l. 454--><\/p>\n<p class=\"noindent\" >8.000,8.000,8.000,8.000,8.000,8.000,8.000,5.036,4.902,4.778,\n  <\/p>\n<p><!--l. 456--><\/p>\n<p class=\"noindent\" >4.662,4.539,4.439,4.345,4.258,4.170,4.092,4.019,3.947,3.880,\n  <\/p>\n<p><!--l. 458--><\/p>\n<p class=\"noindent\" >3.817,3.756,3.698,3.643,3.590,3.539,3.491,3.444,3.399,3.356,\n  <\/p>\n<p><!--l. 460--><\/p>\n<p class=\"noindent\" >3.315,3.275,3.236,3.199,3.163,3.128,3.095,3.062,3.030,3.000,\n  <\/p>\n<p><!--l. 462--><\/p>\n<p class=\"noindent\" >2.970,2.941,2.913,2.886,2.859,2.834,2.808,2.784,2.760,2.737                                                                            <\/p>\n<\/td>\n<\/tr>\n<tr \nclass=\"hline\"><\/p>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<td>\n<hr \/>\n<\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-31-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-31-1\"  \nclass=\"td11\">       <\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-32-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-32-1\"  \nclass=\"td11\">       <\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-33-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-33-1\"  \nclass=\"td11\">       <\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-34-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-34-1\"  \nclass=\"td11\">       <\/td>\n<\/tr>\n<tr  \n style=\"vertical-align:baseline;\" id=\"TBL-3-35-\"><\/p>\n<td  style=\"text-align:left; white-space:nowrap;\" id=\"TBL-3-35-1\"  \nclass=\"td11\">       <\/td>\n<\/tr>\n<\/table>\n<\/div>\n<p><!--l. 1--><\/p>\n<p class=\"noindent\" >\n<h3 class=\"likesectionHead\"><a \n id=\"x1-13000\"><\/a>References<\/h3>\n<p><!--l. 1--><\/p>\n<p class=\"noindent\" >\n<div class=\"thebibliography\">\n<p class=\"bibitem\" ><span class=\"biblabel\"><br \/>\n<a \n id=\"Xclincal-book\"><\/a><span class=\"bibsp\">&#x00A0;&#x00A0;&#x00A0;<\/span><\/span>Jay Bartroff, Tze&#x00A0;Leung Lai, and Mei-Chiung Shih.  <span \nclass=\"ecti-1000\">Sequential Experimentation in Clinical Trials<\/span>.  Springer,<br \/>\n  2013.\n  <\/p>\n<p class=\"bibitem\" ><span class=\"biblabel\"><br \/>\n<a \n id=\"Xlindley\"><\/a><span class=\"bibsp\">&#x00A0;&#x00A0;&#x00A0;<\/span><\/span>D.&#x00A0;V. Lindley. A statistical paradox. <span \nclass=\"ecti-1000\">Biometrika<\/span>, 44:187&#8211;192, 1957.\n  <\/p>\n<p class=\"bibitem\" ><span class=\"biblabel\"><br \/>\n<a \n id=\"Xlordon\"><\/a><span class=\"bibsp\">&#x00A0;&#x00A0;&#x00A0;<\/span><\/span>Gary Lordon. 2-sprt&#8217;s and the modified kiefer-weiss problem of minimizing an expected sample size. <span \nclass=\"ecti-1000\">The Annals<\/span><br \/>\n  <span \nclass=\"ecti-1000\">of Statistics<\/span>, 4:281&#8211;291, 1976.\n  <\/p>\n<p class=\"bibitem\" ><span class=\"biblabel\"><br \/>\n<a \n id=\"Xobf\"><\/a><span class=\"bibsp\">&#x00A0;&#x00A0;&#x00A0;<\/span><\/span>Peter&#x00A0;C. O&#8217;brien and Thomas&#x00A0;R. Fleming.  A multiple testing procedure for clinical trials.  <span \nclass=\"ecti-1000\">Biometrics<\/span>, 35,<br \/>\n  1979.\n  <\/p>\n<p class=\"bibitem\" ><span class=\"biblabel\"><br \/>\n<a \n id=\"Xpocock\"><\/a><span class=\"bibsp\">&#x00A0;&#x00A0;&#x00A0;<\/span><\/span>Stuart&#x00A0;J. Pocock. Group sequential methods in the design and analysis of clinical trials. <span \nclass=\"ecti-1000\">Biometrika<\/span>, 64, 1977.\n  <\/p>\n<p class=\"bibitem\" ><span class=\"biblabel\"><br \/>\n<a \n id=\"Xgreen-book\"><\/a><span class=\"bibsp\">&#x00A0;&#x00A0;&#x00A0;<\/span><\/span>Alexander Tartakovsky, Igor Nikiforov, and Mich\u00e9le Basseville.  <span \nclass=\"ecti-1000\">Sequential Analysis: Hypothesis Testing and<\/span><br \/>\n  <span \nclass=\"ecti-1000\">Changepoint Detection<\/span>. CRC Press, 2013.\n  <\/p>\n<p class=\"bibitem\" ><span class=\"biblabel\"><br \/>\n<a \n id=\"Xwald1945\"><\/a><span class=\"bibsp\">&#x00A0;&#x00A0;&#x00A0;<\/span><\/span>A.&#x00A0;Wald.   Sequential  tests  of  statistical  hypotheses.   <span \nclass=\"ecti-1000\">Ann.  Math.  Statist.<\/span>,  16(2):117&#8211;186,  06  1945.   doi:<br \/>\n  10.1214\/aoms\/1177731118. URL <span \nclass=\"ectt-1000\">http:\/\/dx.doi.org\/10.1214\/aoms\/1177731118<\/span>.\n<\/p>\n<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>It&#8217;s amazing the amount of confusion on how to run a simple A\/B test seen on the internet. The crux of the matter is this: If you&#8217;re going to look at the results of your experiment as it runs, you can not just repeatedly apply a 5% significance level t-test. Doing so WILL lead to &hellip; <a href=\"https:\/\/www.aarondefazio.com\/tangentially\/?p=83\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">How to do A\/B testing with early stopping correctly<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/www.aarondefazio.com\/tangentially\/index.php?rest_route=\/wp\/v2\/posts\/83"}],"collection":[{"href":"https:\/\/www.aarondefazio.com\/tangentially\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.aarondefazio.com\/tangentially\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.aarondefazio.com\/tangentially\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.aarondefazio.com\/tangentially\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=83"}],"version-history":[{"count":4,"href":"https:\/\/www.aarondefazio.com\/tangentially\/index.php?rest_route=\/wp\/v2\/posts\/83\/revisions"}],"predecessor-version":[{"id":87,"href":"https:\/\/www.aarondefazio.com\/tangentially\/index.php?rest_route=\/wp\/v2\/posts\/83\/revisions\/87"}],"wp:attachment":[{"href":"https:\/\/www.aarondefazio.com\/tangentially\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=83"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.aarondefazio.com\/tangentially\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=83"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.aarondefazio.com\/tangentially\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=83"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}