Skip to content

Commit

Permalink
Update Plackett-Burman example
Browse files Browse the repository at this point in the history
  • Loading branch information
phrb committed Sep 3, 2020
1 parent d1fac00 commit c58dc8b
Showing 1 changed file with 60 additions and 69 deletions.
129 changes: 60 additions & 69 deletions examples/Screening with Plackett-Burman Designs.ipynb
Expand Up @@ -22,17 +22,19 @@
"name": "stdout",
"output_type": "stream",
"text": [
"\u001b[36m\u001b[1mProject \u001b[22m\u001b[39mExperimentalDesign v0.3.0\n",
"\u001b[32m\u001b[1m Status\u001b[22m\u001b[39m `~/.julia/dev/ExperimentalDesign/Project.toml`\n",
" \u001b[90m [a93c6f00]\u001b[39m\u001b[37m DataFrames v0.21.3\u001b[39m\n",
" \u001b[90m [864edb3b]\u001b[39m\u001b[37m DataStructures v0.17.18\u001b[39m\n",
" \u001b[90m [31c24e10]\u001b[39m\u001b[37m Distributions v0.23.4\u001b[39m\n",
"\u001b[32m\u001b[1mStatus\u001b[22m\u001b[39m `~/.julia/dev/ExperimentalDesign/examples/Project.toml`\n",
" \u001b[90m [a93c6f00]\u001b[39m\u001b[37m DataFrames v0.21.5\u001b[39m\n",
" \u001b[90m [31c24e10]\u001b[39m\u001b[37m Distributions v0.23.6\u001b[39m\n",
" \u001b[90m [ffbed154]\u001b[39m\u001b[37m DocStringExtensions v0.8.2\u001b[39m\n",
" \u001b[90m [e30172f5]\u001b[39m\u001b[37m Documenter v0.24.11\u001b[39m\n",
" \u001b[90m [4babbea4]\u001b[39m\u001b[37m ExperimentalDesign v0.3.3\u001b[39m\n",
" \u001b[90m [38e38edf]\u001b[39m\u001b[37m GLM v1.3.9\u001b[39m\n",
" \u001b[90m [7073ff75]\u001b[39m\u001b[37m IJulia v1.21.3\u001b[39m\n",
" \u001b[90m [91a5bcdd]\u001b[39m\u001b[37m Plots v1.5.7\u001b[39m\n",
" \u001b[90m [27ebfcd6]\u001b[39m\u001b[37m Primes v0.5.0\u001b[39m\n",
" \u001b[90m [2913bbd2]\u001b[39m\u001b[37m StatsBase v0.33.0\u001b[39m\n",
" \u001b[90m [3eaba693]\u001b[39m\u001b[37m StatsModels v0.6.11\u001b[39m\n",
" \u001b[90m [3eaba693]\u001b[39m\u001b[37m StatsModels v0.6.12\u001b[39m\n",
" \u001b[90m [f3b207a7]\u001b[39m\u001b[37m StatsPlots v0.14.6\u001b[39m\n",
" \u001b[90m [37e2e46d]\u001b[39m\u001b[37m LinearAlgebra \u001b[39m\n",
" \u001b[90m [56ddb016]\u001b[39m\u001b[37m Logging \u001b[39m\n",
" \u001b[90m [9a3f8284]\u001b[39m\u001b[37m Random \u001b[39m\n",
Expand Down Expand Up @@ -79,18 +81,7 @@
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"┌ Info: Precompiling ExperimentalDesign [4babbea4-9e7d-11e9-116f-e1ada04bd296]\n",
"└ @ Base loading.jl:1273\n",
"┌ Info: Precompiling GLM [38e38edf-8417-5370-95a0-9cbb8c7f171a]\n",
"└ @ Base loading.jl:1273\n"
]
}
],
"outputs": [],
"source": [
"using ExperimentalDesign, StatsModels, GLM, DataFrames, Distributions, Random"
]
Expand Down Expand Up @@ -363,7 +354,7 @@
},
{
"cell_type": "code",
"execution_count": 15,
"execution_count": 9,
"metadata": {},
"outputs": [
{
Expand All @@ -377,17 +368,17 @@
"───────────────────────────────────────────────────────────────────────────\n",
" Estimate Std. Error t value Pr(>|t|) Lower 95% Upper 95%\n",
"───────────────────────────────────────────────────────────────────────────\n",
"factor1 2.66359 0.940183 2.83305 0.2160 -9.28257 14.6097 \n",
"factor1 2.66359 0.940183 2.83305 0.2160 -9.28257 14.6097\n",
"factor2 -2.80249 0.940183 -2.98079 0.2061 -14.7486 9.14367\n",
"factor3 7.71644 0.940183 8.20739 0.0772 -4.22971 19.6626 \n",
"factor4 -0.0497774 0.940183 -0.0529443 0.9663 -11.9959 11.8964 \n",
"factor5 0.612681 0.940183 0.651661 0.6323 -11.3335 12.5588 \n",
"factor6 -0.112675 0.940183 -0.119844 0.9241 -12.0588 11.8335 \n",
"dummy1 -0.437176 0.940183 -0.46499 0.7229 -12.3833 11.509 \n",
"factor3 7.71644 0.940183 8.20739 0.0772 -4.22971 19.6626\n",
"factor4 -0.0497774 0.940183 -0.0529443 0.9663 -11.9959 11.8964\n",
"factor5 0.612681 0.940183 0.651661 0.6323 -11.3335 12.5588\n",
"factor6 -0.112675 0.940183 -0.119844 0.9241 -12.0588 11.8335\n",
"dummy1 -0.437176 0.940183 -0.46499 0.7229 -12.3833 11.509\n",
"───────────────────────────────────────────────────────────────────────────"
]
},
"execution_count": 15,
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
Expand Down Expand Up @@ -416,7 +407,7 @@
},
{
"cell_type": "code",
"execution_count": 16,
"execution_count": 10,
"metadata": {
"scrolled": true
},
Expand All @@ -435,14 +426,14 @@
"(Intercept) 0.940183 0.437176 2.15058 0.2771 -4.61466 6.49503\n",
"factor1 2.66359 0.437176 6.09271 0.1036 -2.89126 8.21843\n",
"factor2 -2.80249 0.437176 -6.41043 0.0985 -8.35733 2.75236\n",
"factor3 7.71644 0.437176 17.6507 0.0360 2.1616 13.2713 \n",
"factor3 7.71644 0.437176 17.6507 0.0360 2.1616 13.2713\n",
"factor4 -0.0497774 0.437176 -0.113861 0.9278 -5.60462 5.50507\n",
"factor5 0.612681 0.437176 1.40145 0.3946 -4.94217 6.16753\n",
"factor6 -0.112675 0.437176 -0.257734 0.8394 -5.66752 5.44217\n",
"──────────────────────────────────────────────────────────────────────────────"
]
},
"execution_count": 16,
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
Expand Down Expand Up @@ -474,48 +465,48 @@
},
{
"cell_type": "code",
"execution_count": 20,
"execution_count": 11,
"metadata": {
"scrolled": false
},
"outputs": [
{
"data": {
"text/html": [
"<table class=\"data-frame\"><thead><tr><th></th><th>factor1</th><th>factor2</th><th>factor3</th><th>factor4</th><th>factor5</th><th>factor6</th><th>response</th></tr><tr><th></th><th>Float64</th><th>Float64</th><th>Float64</th><th>Float64</th><th>Float64</th><th>Float64</th><th>Float64</th></tr></thead><tbody><p>8 rows × 7 columns</p><tr><th>1</th><td>1.0</td><td>-1.0</td><td>1.0</td><td>1.0</td><td>1.0</td><td>1.0</td><td>14.8616</td></tr><tr><th>2</th><td>1.0</td><td>-1.0</td><td>1.0</td><td>1.0</td><td>-1.0</td><td>-1.0</td><td>11.8434</td></tr><tr><th>3</th><td>-1.0</td><td>1.0</td><td>1.0</td><td>-1.0</td><td>-1.0</td><td>-1.0</td><td>2.64702</td></tr><tr><th>4</th><td>1.0</td><td>-1.0</td><td>1.0</td><td>-1.0</td><td>1.0</td><td>-1.0</td><td>15.5183</td></tr><tr><th>5</th><td>1.0</td><td>1.0</td><td>1.0</td><td>-1.0</td><td>1.0</td><td>1.0</td><td>7.76413</td></tr><tr><th>6</th><td>1.0</td><td>-1.0</td><td>1.0</td><td>1.0</td><td>1.0</td><td>-1.0</td><td>15.6221</td></tr><tr><th>7</th><td>-1.0</td><td>-1.0</td><td>-1.0</td><td>-1.0</td><td>1.0</td><td>-1.0</td><td>-3.63797</td></tr><tr><th>8</th><td>1.0</td><td>1.0</td><td>-1.0</td><td>-1.0</td><td>-1.0</td><td>-1.0</td><td>-9.45331</td></tr></tbody></table>"
"<table class=\"data-frame\"><thead><tr><th></th><th>factor1</th><th>factor2</th><th>factor3</th><th>factor4</th><th>factor5</th><th>factor6</th><th>response</th></tr><tr><th></th><th>Int64</th><th>Int64</th><th>Int64</th><th>Int64</th><th>Int64</th><th>Int64</th><th>Float64</th></tr></thead><tbody><p>8 rows × 7 columns</p><tr><th>1</th><td>1</td><td>-1</td><td>1</td><td>1</td><td>1</td><td>1</td><td>14.8616</td></tr><tr><th>2</th><td>1</td><td>-1</td><td>1</td><td>1</td><td>-1</td><td>-1</td><td>11.8434</td></tr><tr><th>3</th><td>-1</td><td>1</td><td>1</td><td>-1</td><td>-1</td><td>-1</td><td>2.64702</td></tr><tr><th>4</th><td>1</td><td>-1</td><td>1</td><td>-1</td><td>1</td><td>-1</td><td>15.5183</td></tr><tr><th>5</th><td>1</td><td>1</td><td>1</td><td>-1</td><td>1</td><td>1</td><td>7.76413</td></tr><tr><th>6</th><td>1</td><td>-1</td><td>1</td><td>1</td><td>1</td><td>-1</td><td>15.6221</td></tr><tr><th>7</th><td>-1</td><td>-1</td><td>-1</td><td>-1</td><td>1</td><td>-1</td><td>-3.63797</td></tr><tr><th>8</th><td>1</td><td>1</td><td>-1</td><td>-1</td><td>-1</td><td>-1</td><td>-9.45331</td></tr></tbody></table>"
],
"text/latex": [
"\\begin{tabular}{r|ccccccc}\n",
"\t& factor1 & factor2 & factor3 & factor4 & factor5 & factor6 & response\\\\\n",
"\t\\hline\n",
"\t& Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64\\\\\n",
"\t& Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Float64\\\\\n",
"\t\\hline\n",
"\t1 & 1.0 & -1.0 & 1.0 & 1.0 & 1.0 & 1.0 & 14.8616 \\\\\n",
"\t2 & 1.0 & -1.0 & 1.0 & 1.0 & -1.0 & -1.0 & 11.8434 \\\\\n",
"\t3 & -1.0 & 1.0 & 1.0 & -1.0 & -1.0 & -1.0 & 2.64702 \\\\\n",
"\t4 & 1.0 & -1.0 & 1.0 & -1.0 & 1.0 & -1.0 & 15.5183 \\\\\n",
"\t5 & 1.0 & 1.0 & 1.0 & -1.0 & 1.0 & 1.0 & 7.76413 \\\\\n",
"\t6 & 1.0 & -1.0 & 1.0 & 1.0 & 1.0 & -1.0 & 15.6221 \\\\\n",
"\t7 & -1.0 & -1.0 & -1.0 & -1.0 & 1.0 & -1.0 & -3.63797 \\\\\n",
"\t8 & 1.0 & 1.0 & -1.0 & -1.0 & -1.0 & -1.0 & -9.45331 \\\\\n",
"\t1 & 1 & -1 & 1 & 1 & 1 & 1 & 14.8616 \\\\\n",
"\t2 & 1 & -1 & 1 & 1 & -1 & -1 & 11.8434 \\\\\n",
"\t3 & -1 & 1 & 1 & -1 & -1 & -1 & 2.64702 \\\\\n",
"\t4 & 1 & -1 & 1 & -1 & 1 & -1 & 15.5183 \\\\\n",
"\t5 & 1 & 1 & 1 & -1 & 1 & 1 & 7.76413 \\\\\n",
"\t6 & 1 & -1 & 1 & 1 & 1 & -1 & 15.6221 \\\\\n",
"\t7 & -1 & -1 & -1 & -1 & 1 & -1 & -3.63797 \\\\\n",
"\t8 & 1 & 1 & -1 & -1 & -1 & -1 & -9.45331 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"8×7 DataFrame\n",
"│ Row │ factor1 │ factor2 │ factor3 │ factor4 │ factor5 │ factor6 │ response │\n",
"│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
"│ │ \u001b[90mInt64\u001b[39m \u001b[90mInt64\u001b[39m \u001b[90mInt64\u001b[39m \u001b[90mInt64\u001b[39m \u001b[90mInt64\u001b[39m \u001b[90mInt64\u001b[39m \u001b[90mFloat64\u001b[39m │\n",
"├─────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼──────────┤\n",
"│ 1 │ 1.0 │ -1.0 │ 1.0 │ 1.0 │ 1.0 │ 1.0 │ 14.8616 │\n",
"│ 2 │ 1.0 │ -1.0 │ 1.0 │ 1.0 │ -1.0 │ -1.0 │ 11.8434 │\n",
"│ 3 │ -1.0 │ 1.0 │ 1.0 │ -1.0 │ -1.0 │ -1.0 │ 2.64702 │\n",
"│ 4 │ 1.0 │ -1.0 │ 1.0 │ -1.0 │ 1.0 │ -1.0 │ 15.5183 │\n",
"│ 5 │ 1.0 │ 1.0 │ 1.0 │ -1.0 │ 1.0 │ 1.0 │ 7.76413 │\n",
"│ 6 │ 1.0 │ -1.0 │ 1.0 │ 1.0 │ 1.0 │ -1.0 │ 15.6221 │\n",
"│ 7 │ -1.0 │ -1.0 │ -1.0 │ -1.0 │ 1.0 │ -1.0 │ -3.63797 │\n",
"│ 8 │ 1.0 │ 1.0 │ -1.0 │ -1.0 │ -1.0 │ -1.0 │ -9.45331 │"
"│ 1 │ 1 │ -1 │ 1 │ 1 │ 1 │ 1 │ 14.8616 │\n",
"│ 2 │ 1 │ -1 │ 1 │ 1 │ -1 │ -1 │ 11.8434 │\n",
"│ 3 │ -1 │ 1 │ 1 │ -1 │ -1 │ -1 │ 2.64702 │\n",
"│ 4 │ 1 │ -1 │ 1 │ -1 │ 1 │ -1 │ 15.5183 │\n",
"│ 5 │ 1 │ 1 │ 1 │ -1 │ 1 │ 1 │ 7.76413 │\n",
"│ 6 │ 1 │ -1 │ 1 │ 1 │ 1 │ -1 │ 15.6221 │\n",
"│ 7 │ -1 │ -1 │ -1 │ -1 │ 1 │ -1 │ -3.63797 │\n",
"│ 8 │ 1 │ 1 │ -1 │ -1 │ -1 │ -1 │ -9.45331 │"
]
},
"execution_count": 20,
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
Expand All @@ -532,7 +523,7 @@
},
{
"cell_type": "code",
"execution_count": 13,
"execution_count": 17,
"metadata": {},
"outputs": [
{
Expand All @@ -546,23 +537,23 @@
"─────────────────────────────────────────────────────────────────────────────\n",
" Estimate Std. Error t value Pr(>|t|) Lower 95% Upper 95%\n",
"─────────────────────────────────────────────────────────────────────────────\n",
"(Intercept) 0.600392 0.738868 0.812583 0.5656 -8.78781 9.9886 \n",
"factor1 2.2371 0.639878 3.49613 0.1774 -5.89333 10.3675 \n",
"factor2 -2.56857 1.04492 -2.45816 0.2460 -15.8455 10.7084 \n",
"factor3 8.05743 0.738868 10.9051 0.0582 -1.33077 17.4456 \n",
"factor4 0.140622 1.04492 0.134577 0.9148 -13.1363 13.4175 \n",
"factor5 0.907918 0.97743 0.928882 0.5235 -11.5115 13.3273 \n",
"factor6 -0.600354 0.738868 -0.812532 0.5656 -9.98856 8.78785\n",
"(Intercept) 0.761531 0.472627 1.61127 0.3536 -5.24377 6.76683\n",
"factor1 1.67467 0.345928 4.8411 0.1297 -2.72076 6.0701\n",
"factor2 -3.05027 0.557792 -5.46848 0.1151 -10.1377 4.03715\n",
"factor3 7.72484 0.345928 22.3308 0.0285 3.32941 12.1203\n",
"factor4 0.141204 0.497302 0.283939 0.8239 -6.17762 6.46003\n",
"factor5 1.71071 0.472627 3.61957 0.1716 -4.29459 7.71601\n",
"factor6 -0.558869 0.472627 -1.18247 0.4469 -6.56417 5.44643\n",
"─────────────────────────────────────────────────────────────────────────────"
]
},
"execution_count": 13,
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"lm(random_design_generator.formula, random_design)"
"lm(term(:response) ~ random_design.formula.rhs, random_design.matrix)"
]
},
{
Expand All @@ -576,7 +567,7 @@
"| Original | 1.2 | 2.3 | -3.4 | 7.12 | -0.03 | 1.1 | -0.5 | $-$ |\n",
"| Plackett-Burman Main Effects | $-$ | 2.66359 | -2.80249 | 7.71644 | -0.0497774 | 0.612681 | -0.112675 | -0.437176 |\n",
"| Plackett-Burman Estimate | 0.940183 | 2.66359 | -2.80249 | 7.71644 | -0.0497774 | 0.612681 | -0.112675 | $-$ |\n",
"| Single Random Design Estimate | 0.600392 | 2.2371 | -2.56857 | 8.05743 | 0.140622 | 0.907918 | -0.600354 | $-$ |\n",
"| Single Random Design Estimate | 0.761531 | 1.67467 | -3.05027 | 7.72484 | 0.141204 | 1.71071 | -0.558869 | $-$ |\n",
"\n",
"The estimates produced using random designs will have larger confidence intervals, and therefore increased variability. The Plackett-Burman design is fixed, but can be randomised. The variability of main effects estimates using screening designs will depend on measurement or model error.\n",
"\n",
Expand All @@ -589,7 +580,7 @@
},
{
"cell_type": "code",
"execution_count": 24,
"execution_count": 18,
"metadata": {},
"outputs": [
{
Expand All @@ -603,17 +594,17 @@
"──────────────────────────────────────────────────────────────────────────────\n",
" Estimate Std. Error t value Pr(>|t|) Lower 95% Upper 95%\n",
"──────────────────────────────────────────────────────────────────────────────\n",
"(Intercept) 1.13095 0.123021 9.1932 <1e-12 0.88461 1.3773 \n",
"factor1 2.23668 0.123021 18.1813 <1e-24 1.99034 2.48303 \n",
"factor2 -3.4775 0.123021 -28.2675 <1e-34 -3.72384 -3.23115 \n",
"factor3 6.95531 0.123021 56.5377 <1e-51 6.70897 7.20166 \n",
"(Intercept) 1.13095 0.123021 9.1932 <1e-12 0.88461 1.3773\n",
"factor1 2.23668 0.123021 18.1813 <1e-24 1.99034 2.48303\n",
"factor2 -3.4775 0.123021 -28.2675 <1e-34 -3.72384 -3.23115\n",
"factor3 6.95531 0.123021 56.5377 <1e-51 6.70897 7.20166\n",
"factor4 -0.160546 0.123021 -1.30503 0.1971 -0.406891 0.0857987\n",
"factor5 0.975471 0.123021 7.92932 <1e-10 0.729127 1.22182 \n",
"factor6 -0.357748 0.123021 -2.90803 0.0052 -0.604093 -0.111403 \n",
"factor5 0.975471 0.123021 7.92932 <1e-10 0.729127 1.22182\n",
"factor6 -0.357748 0.123021 -2.90803 0.0052 -0.604093 -0.111403\n",
"──────────────────────────────────────────────────────────────────────────────"
]
},
"execution_count": 24,
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
Expand Down

0 comments on commit c58dc8b

Please sign in to comment.