{"id":37365,"date":"2026-08-23T13:21:38","date_gmt":"2026-08-23T07:51:38","guid":{"rendered":"https:\/\/atsixty.com\/?p=37365"},"modified":"2026-08-23T19:25:02","modified_gmt":"2026-08-23T13:55:02","slug":"biostatistics","status":"publish","type":"post","link":"https:\/\/atsixty.com\/index.php\/morning-rounds\/biostatistics\/","title":{"rendered":"Biostatistics"},"content":{"rendered":"\n\n\n<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n<meta charset=\"UTF-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n<title>Morning Rounds \u00b7 PSM Numericals \u00b7 Round 01<\/title>\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400;1,600&#038;family=Source+Serif+4:ital,wght@0,300;0,400;0,600;1,400&#038;display=swap\" rel=\"stylesheet\">\n<style>\n#nps01 *,#nps01 *::before,#nps01 *::after{box-sizing:border-box;margin:0;padding:0}\n#nps01{\n  --ob:#1A5F7A;\n  --ob-light:#236E8C;\n  --ob-pale:#E6F3F7;\n  --ob-dark:#114455;\n  --correct:#2D6B47;--correct-bg:#EAF6EF;--correct-border:#3A9960;\n  --wrong:#B83232;--wrong-bg:#FDF0F0;--wrong-border:#E53935;\n  --ink:#0F2A35;--ink-mid:#2A4D5A;--ink-soft:#5A7D8A;\n  --line:#B8D8E3;--cream:#F2F8FA;--warm:#F8FCFD;\n  font-family:'Source Serif 4',Georgia,serif;\n  font-size:16px;color:var(--ink);background:var(--cream);\n  line-height:1.7;padding:0 0 64px;\n}\n#nps01 .mr-header{\n  background:linear-gradient(135deg,var(--ob-dark) 0%,var(--ob) 60%,var(--ob-light) 100%);\n  color:#E4F4F9;padding:36px 24px 30px;text-align:center;\n  position:relative;overflow:hidden;\n}\n#nps01 .mr-header::before{\n  content:'';position:absolute;inset:0;\n  background:repeating-linear-gradient(45deg,transparent,transparent 18px,rgba(255,255,255,0.03) 18px,rgba(255,255,255,0.03) 19px);\n}\n#nps01 .mr-eyebrow{font-size:0.66rem;letter-spacing:0.22em;text-transform:uppercase;font-weight:700;opacity:0.6;margin-bottom:10px;position:relative;}\n#nps01 .mr-series-tag{display:inline-block;background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.2);border-radius:4px;padding:2px 10px;font-size:0.64rem;letter-spacing:0.14em;text-transform:uppercase;font-weight:700;margin-bottom:14px;position:relative;}\n#nps01 .mr-title{font-family:'Playfair Display',serif;font-size:1.8rem;font-weight:700;line-height:1.2;margin-bottom:6px;position:relative;}\n#nps01 .mr-title em{font-style:italic;font-weight:400;opacity:0.85}\n#nps01 .mr-subtitle{font-size:0.82rem;opacity:0.65;margin-top:8px;font-style:italic;position:relative;}\n#nps01 .mr-chips{display:flex;justify-content:center;gap:10px;margin-top:18px;flex-wrap:wrap;position:relative;}\n#nps01 .mr-chip{background:rgba(255,255,255,0.13);border:1px solid rgba(255,255,255,0.22);border-radius:20px;padding:4px 13px;font-size:0.72rem;}\n#nps01 .mr-sentinel{height:1px}\n#nps01 .mr-progress{position:fixed;top:0;left:0;right:0;z-index:9999;background:var(--warm);border-bottom:1px solid var(--line);box-shadow:0 2px 12px rgba(15,42,53,0.1);padding:9px 16px;display:none;}\n#nps01 .mr-progress.visible{display:block}\n#nps01 .mr-prog-inner{max-width:720px;margin:0 auto;display:flex;align-items:center;justify-content:center}\n#nps01 .mr-pips{display:flex;align-items:center;justify-content:center}\n#nps01 .mr-pip-wrap{display:flex;align-items:center}\n#nps01 .mr-pip-line{width:28px;height:2px;background:var(--line);transition:background 0.35s}\n#nps01 .mr-pip-line.done{background:var(--ob)}\n#nps01 .mr-pip{width:28px;height:28px;border-radius:50%;border:2px solid var(--line);background:var(--warm);display:flex;align-items:center;justify-content:center;font-size:0.63rem;font-weight:700;color:var(--ink-soft);transition:all 0.3s;flex-shrink:0;}\n#nps01 .mr-pip.correct{background:var(--correct-border);border-color:var(--correct-border);color:#fff}\n#nps01 .mr-pip.wrong{background:var(--wrong-border);border-color:var(--wrong-border);color:#fff}\n#nps01 .mr-body{max-width:720px;margin:0 auto;padding:0 16px}\n#nps01 .mr-case{background:var(--warm);border:1px solid var(--line);border-left:4px solid var(--ob);border-radius:10px;margin:28px 0;overflow:hidden;box-shadow:0 1px 8px rgba(15,42,53,0.07);}\n#nps01 .mr-case-top{padding:16px 20px 14px;display:flex;gap:14px;align-items:flex-start}\n#nps01 .mr-num{font-family:'Playfair Display',serif;font-size:2.2rem;font-weight:700;color:var(--ob);opacity:0.14;line-height:1;margin-top:-2px;flex-shrink:0;}\n#nps01 .mr-meta{flex:1}\n#nps01 .mr-tag{font-size:0.61rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--ob);opacity:0.8;margin-bottom:5px;}\n#nps01 .mr-stem{font-size:0.94rem;color:var(--ink);line-height:1.72}\n#nps01 .mr-stem strong{font-weight:600}\n#nps01 .mr-stem em{font-style:italic}\n#nps01 .mr-rule{height:1px;background:var(--line);margin:0 20px}\n#nps01 .mr-opts{padding:12px 20px 16px;display:flex;flex-direction:column;gap:8px}\n#nps01 .mr-opt{display:flex;align-items:flex-start;gap:11px;padding:10px 14px;border:1.5px solid var(--line);border-radius:8px;cursor:pointer;background:var(--warm);transition:border-color 0.15s,background 0.15s;-webkit-tap-highlight-color:transparent;}\n#nps01 .mr-opt:hover{border-color:var(--ob);background:var(--ob-pale)}\n#nps01 .mr-opt.locked{cursor:default}\n#nps01 .mr-opt.locked:hover{border-color:var(--line);background:var(--warm)}\n#nps01 .mr-opt.correct{border-color:var(--correct-border);background:var(--correct-bg);cursor:default}\n#nps01 .mr-opt.correct:hover{border-color:var(--correct-border);background:var(--correct-bg)}\n#nps01 .mr-opt.wrong{border-color:var(--wrong-border);background:var(--wrong-bg);cursor:default}\n#nps01 .mr-opt.wrong:hover{border-color:var(--wrong-border);background:var(--wrong-bg)}\n#nps01 .mr-opt.dimmed{opacity:0.35;cursor:default}\n#nps01 .mr-opt.dimmed:hover{border-color:var(--line);background:var(--warm)}\n#nps01 .mr-ltr{flex-shrink:0;width:20px;height:20px;border-radius:50%;border:1.5px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:0.62rem;font-weight:700;color:var(--ink-soft);margin-top:2px;transition:all 0.15s;}\n#nps01 .mr-opt.correct .mr-ltr{background:var(--correct-border);border-color:var(--correct-border);color:#fff}\n#nps01 .mr-opt.wrong .mr-ltr{background:var(--wrong-border);border-color:var(--wrong-border);color:#fff}\n#nps01 .mr-opt-text{font-size:0.9rem;color:var(--ink-mid);line-height:1.58}\n#nps01 .mr-opt.correct .mr-opt-text{color:var(--correct);font-weight:600}\n#nps01 .mr-opt.wrong .mr-opt-text{color:var(--wrong)}\n#nps01 .mr-exp{display:none;border-top:1px solid #9CCFDF;background:linear-gradient(180deg,#D4EEF7 0%,#EAF5FA 100%);padding:13px 20px 15px;}\n#nps01 .mr-exp-lbl{font-size:0.61rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--ob-dark);margin-bottom:6px;}\n#nps01 .mr-exp-text{font-size:0.86rem;color:#0F2A35;line-height:1.7}\n#nps01 .mr-exp-text strong{font-weight:600}\n#nps01 .mr-exp-text em{font-style:italic}\n#nps01 .mr-exp-text .calc{display:block;background:rgba(26,95,122,0.08);border-left:3px solid var(--ob);border-radius:0 4px 4px 0;padding:6px 10px;margin:8px 0;font-family:Georgia,serif;font-size:0.84rem;color:var(--ob-dark);}\n#nps01 .mr-table{width:100%;border-collapse:collapse;margin:10px 0;font-size:0.82rem;}\n#nps01 .mr-table th{background:var(--ob);color:#E4F4F9;padding:6px 10px;text-align:center;font-weight:600;}\n#nps01 .mr-table td{padding:6px 10px;border:1px solid var(--line);text-align:center;color:var(--ink-mid);}\n#nps01 .mr-table td strong{color:var(--ink);}\n#nps01 .mr-table tr:nth-child(even) td{background:var(--ob-pale);}\n#nps01 .mr-submit-wrap{text-align:center;padding:28px 16px 8px}\n#nps01 .mr-btn{background:var(--ob);color:#E4F4F9;border:none;border-radius:8px;padding:13px 44px;font-family:'Playfair Display',serif;font-size:1rem;font-weight:700;cursor:pointer;box-shadow:0 2px 10px rgba(26,95,122,0.32);}\n#nps01 .mr-btn:hover{background:var(--ob-dark)}\n#nps01 .mr-score{display:none;background:var(--warm);border:1px solid var(--line);border-top:4px solid var(--ob);border-radius:10px;margin:24px 0 0;box-shadow:0 2px 12px rgba(15,42,53,0.08);overflow:hidden;}\n#nps01 .mr-score-in{padding:28px 24px;text-align:center}\n#nps01 .mr-score-ey{font-size:0.66rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:12px;font-weight:600;}\n#nps01 .mr-ring{width:98px;height:98px;border-radius:50%;background:conic-gradient(var(--ob) 0%,var(--line) 0%);display:flex;align-items:center;justify-content:center;margin:0 auto 16px;position:relative;}\n#nps01 .mr-ring::before{content:'';position:absolute;width:76px;height:76px;border-radius:50%;background:var(--warm);}\n#nps01 .mr-ring-in{position:relative;display:flex;flex-direction:column;align-items:center;line-height:1.2}\n#nps01 .mr-ring-pct{font-family:'Playfair Display',serif;font-size:1.3rem;font-weight:700;color:var(--ob)}\n#nps01 .mr-ring-sub{font-size:0.54rem;color:var(--ink-soft);text-transform:uppercase;letter-spacing:0.06em}\n#nps01 .mr-score-title{font-family:'Playfair Display',serif;font-size:1.15rem;font-weight:700;color:var(--ink);margin-bottom:4px}\n#nps01 .mr-score-net{font-size:0.9rem;color:var(--ob);font-weight:600;margin-bottom:4px}\n#nps01 .mr-verdict{font-size:0.83rem;color:var(--ink-soft);font-style:italic;margin-bottom:18px;padding:0 12px}\n#nps01 .mr-bands{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}\n#nps01 .mr-band{padding:5px 13px;border-radius:16px;font-size:0.78rem;font-weight:600}\n#nps01 .mr-band-c{background:var(--correct-bg);color:var(--correct)}\n#nps01 .mr-band-w{background:var(--wrong-bg);color:var(--wrong)}\n#nps01 .mr-band-s{background:var(--ob-pale);color:var(--ob)}\n#nps01 .mr-retry{display:block;margin:18px auto 4px;background:transparent;border:2px solid var(--ob);color:var(--ob);border-radius:8px;padding:9px 28px;font-family:'Playfair Display',serif;font-size:0.92rem;font-weight:700;cursor:pointer;}\n#nps01 .mr-retry:hover{background:var(--ob);color:#E4F4F9}\n@media(max-width:480px){\n  #nps01 .mr-title{font-size:1.4rem}\n  #nps01 .mr-num{font-size:1.7rem}\n  #nps01 .mr-stem{font-size:0.9rem}\n  #nps01 .mr-opt-text{font-size:0.86rem}\n}\n<\/style>\n\n<div id=\"nps01\">\n\n  <div class=\"mr-header\">\n    <div class=\"mr-series-tag\">Numerical Series &middot; PSM Biostatistics<\/div>\n    <div class=\"mr-eyebrow\">Morning Rounds &middot; Round 01 of 07<\/div>\n    <div class=\"mr-title\">The 2&times;2 Table &amp;<br><em>Its Four Cells<\/em><\/div>\n    <div class=\"mr-subtitle\">Five questions &middot; Building the table, filling cells &amp; reading what each number actually means<\/div>\n    <div class=\"mr-chips\">\n      <span class=\"mr-chip\">5 Questions<\/span>\n      <span class=\"mr-chip\">+4 \/ &minus;1 scoring<\/span>\n      <span class=\"mr-chip\">Options reshuffled<\/span>\n    <\/div>\n  <\/div>\n\n  <div class=\"mr-sentinel\" id=\"nps01-sentinel\"><\/div>\n\n  <div class=\"mr-progress\" id=\"nps01-progress\">\n    <div class=\"mr-prog-inner\">\n      <div class=\"mr-pips\" id=\"nps01-pips\"><\/div>\n    <\/div>\n  <\/div>\n\n  <div class=\"mr-body\">\n    <div id=\"nps01-cases\"><\/div>\n    <div class=\"mr-submit-wrap\">\n      <button class=\"mr-btn\" id=\"nps01-submit\">Submit for Debrief<\/button>\n    <\/div>\n    <div class=\"mr-score\" id=\"nps01-score\">\n      <div class=\"mr-score-in\">\n        <div class=\"mr-score-ey\">Round Complete<\/div>\n        <div class=\"mr-ring\" id=\"nps01-ring\">\n          <div class=\"mr-ring-in\">\n            <span class=\"mr-ring-pct\" id=\"nps01-pct\">0%<\/span>\n            <span class=\"mr-ring-sub\">net<\/span>\n          <\/div>\n        <\/div>\n        <div class=\"mr-score-title\">Your Debrief<\/div>\n        <div class=\"mr-score-net\" id=\"nps01-net\"><\/div>\n        <div class=\"mr-verdict\" id=\"nps01-verdict\"><\/div>\n        <div class=\"mr-bands\">\n          <span class=\"mr-band mr-band-c\" id=\"nps01-ct-c\"><\/span>\n          <span class=\"mr-band mr-band-w\" id=\"nps01-ct-w\"><\/span>\n          <span class=\"mr-band mr-band-s\" id=\"nps01-ct-s\"><\/span>\n        <\/div>\n        <button class=\"mr-retry\" id=\"nps01-retry\">&#8635; New Round<\/button>\n      <\/div>\n    <\/div>\n  <\/div>\n\n<\/div>\n\n<script>\n(function () {\n  'use strict';\n\n  var NS    = 'nps01';\n  var TOTAL = 5;\n  var MAX   = 20;\n  var LTRS  = ['A','B','C','D'];\n\n  var QS = [\n\n    {\n      id: 1,\n      tag: '2&times;2 Table &mdash; Cell Identification',\n      stem: 'A screening test is applied to 1000 people. <strong>200 have the disease<\/strong>. Of these, the test is positive in <strong>180<\/strong>. Of the <strong>800 without disease<\/strong>, the test is positive in <strong>80<\/strong>. Which set of values correctly fills the four cells of the 2&times;2 table?',\n      correct: 'TP=180, FN=20, FP=80, TN=720',\n      opts: [\n        'TP=180, FN=20, FP=80, TN=720',\n        'TP=180, FN=80, FP=20, TN=720',\n        'TP=160, FN=40, FP=80, TN=720',\n        'TP=180, FN=20, FP=80, TN=640'\n      ],\n      exp: 'The 2&times;2 table places <strong>disease status in columns<\/strong> and <strong>test result in rows<\/strong>.<span class=\"calc\">Disease present (n=200): test positive = 180 (TP), test negative = 20 (FN)<br>Disease absent (n=800): test positive = 80 (FP), test negative = 720 (TN)<\/span>Check: TP+FN = 200 \u2713 &nbsp; FP+TN = 800 \u2713 &nbsp; Total = 1000 \u2713<br><br>Trap B swaps FN and FP \u2014 the most common cell-assignment error. Trap C invents a wrong TP. Trap D miscalculates TN as 800&minus;80&minus;40 = 680 (wrong) by using a number from nowhere. Always verify: each disease column must sum to its known total.'\n    },\n\n    {\n      id: 2,\n      tag: '2&times;2 Table &mdash; What True Negative Means',\n      stem: 'In the same study (TP=180, FN=20, FP=80, TN=720), a colleague says the <strong>720 true negatives<\/strong> are the most important cell for ruling out disease. A second colleague disagrees, saying <strong>FN=20<\/strong> is the most critical cell clinically. Who is correct, and why?',\n      correct: 'The second colleague; false negatives are missed cases \u2014 disease present but test negative \u2014 causing delayed diagnosis and continued transmission or progression',\n      opts: [\n        'The second colleague; false negatives are missed cases \u2014 disease present but test negative \u2014 causing delayed diagnosis and continued transmission or progression',\n        'The first colleague; true negatives confirm the absence of disease and allow safe discharge, which is the primary goal of most screening programmes',\n        'Both are correct; TN and FN are mirror images of the same cell and carry equal clinical weight in any screening context',\n        'Neither; the FP cell determines screening programme cost and is the most policy-relevant figure in public health decisions'\n      ],\n      exp: '<strong>False Negatives (FN)<\/strong> = disease present, test negative. These are the missed cases. In a screening programme, a missed case:<br>&bull; Continues to be untreated (progression risk)<br>&bull; May continue spreading infection (TB, HIV)<br>&bull; Provides false reassurance<br><br><strong>True Negatives (TN)<\/strong> are correctly cleared individuals \u2014 important for programme efficiency, but missing one is not a clinical harm in the same way. The asymmetry is why <strong>sensitivity<\/strong> (which directly measures how few FNs occur) is the priority metric for screening tests \u2014 you want to miss as few diseased people as possible.<br><br>Trap C is wrong: TN and FN are not mirror images. TN = correct negative; FN = incorrect negative. Trap D is a legitimate policy concern but not the answer to \"most critical clinically.\"'\n    },\n\n    {\n      id: 3,\n      tag: '2&times;2 Table &mdash; Filling from Partial Data',\n      stem: 'A diagnostic test is evaluated in 500 patients. Prevalence of disease is <strong>40%<\/strong>. The test has <strong>sensitivity 90%<\/strong> and <strong>specificity 85%<\/strong>. How many patients fall in each cell?',\n      correct: 'TP=180, FN=20, FP=45, TN=255',\n      opts: [\n        'TP=180, FN=20, FP=45, TN=255',\n        'TP=180, FN=20, FP=30, TN=270',\n        'TP=160, FN=40, FP=45, TN=255',\n        'TP=180, FN=20, FP=55, TN=245'\n      ],\n      exp: 'Work step by step from what you know:<span class=\"calc\">Disease present = 40% &times; 500 = <strong>200<\/strong><br>Disease absent = 60% &times; 500 = <strong>300<\/strong><br><br>Sensitivity = TP &divide; (TP+FN) = 0.90<br>TP = 0.90 &times; 200 = <strong>180<\/strong> &nbsp; FN = 200&minus;180 = <strong>20<\/strong><br><br>Specificity = TN &divide; (FP+TN) = 0.85<br>TN = 0.85 &times; 300 = <strong>255<\/strong> &nbsp; FP = 300&minus;255 = <strong>45<\/strong><\/span>Check: 180+20+45+255 = 500 \u2713<br><br>Trap B uses specificity 90% by mistake for the TN calculation. Trap C applies sensitivity to the wrong denominator (300 instead of 200). Trap D miscalculates FP. The method is always: find disease totals from prevalence first, then apply sensitivity to diseased column and specificity to non-diseased column.'\n    },\n\n    {\n      id: 4,\n      tag: '2&times;2 Table &mdash; Identifying False Positive Rate',\n      stem: 'From the table in Q3 (TP=180, FN=20, FP=45, TN=255), a health administrator asks for the <strong>false positive rate<\/strong> of the test. Which value is correct, and from which cells is it derived?',\n      correct: '15%; calculated as FP &divide; (FP+TN) = 45 &divide; 300',\n      opts: [\n        '15%; calculated as FP &divide; (FP+TN) = 45 &divide; 300',\n        '20%; calculated as FP &divide; (TP+FP) = 45 &divide; 225',\n        '15%; calculated as FP &divide; (TP+FP+FP+TN) = 45 &divide; 300',\n        '10%; calculated as FN &divide; (TP+FN) = 20 &divide; 200'\n      ],\n      exp: '<strong>False Positive Rate (FPR) = FP &divide; (FP+TN)<\/strong> \u2014 the proportion of disease-free people who test positive.<span class=\"calc\">FPR = 45 &divide; (45+255) = 45 &divide; 300 = <strong>0.15 = 15%<\/strong><\/span>Note: FPR = <strong>1 &minus; Specificity<\/strong>. Here specificity = 85%, so FPR = 15%. This is a quick cross-check.<br><br>The four rates to know and their denominators:<br>&bull; Sensitivity = TP &divide; (TP+FN) \u2014 denominator: all diseased<br>&bull; Specificity = TN &divide; (FP+TN) \u2014 denominator: all non-diseased<br>&bull; FPR = FP &divide; (FP+TN) = 1&minus;Specificity<br>&bull; FNR = FN &divide; (TP+FN) = 1&minus;Sensitivity<br><br>Trap B calculates positive predictive value, not FPR. Trap D calculates the false negative rate. These are the two most common confusions on this topic.'\n    },\n\n    {\n      id: 5,\n      tag: '2&times;2 Table &mdash; Effect of Changing Cut-off',\n      stem: 'A laboratory lowers the cut-off value for a blood test, making it easier to test positive. Compared to the original cut-off, what happens to the cells of the 2&times;2 table?',\n      correct: 'TP and FP both increase; FN and TN both decrease \u2014 sensitivity rises, specificity falls',\n      opts: [\n        'TP and FP both increase; FN and TN both decrease \u2014 sensitivity rises, specificity falls',\n        'TP increases and FN decreases; FP and TN remain unchanged \u2014 only sensitivity is affected',\n        'FP increases and TN decreases; TP and FN remain unchanged \u2014 only specificity is affected',\n        'All four cells change unpredictably; the direction depends on disease prevalence, not cut-off alone'\n      ],\n      exp: 'Lowering the cut-off means <strong>more people test positive<\/strong> \u2014 both diseased and non-diseased.<span class=\"calc\">Among diseased: more now test positive &rarr; TP &uarr;, FN &darr;<br>Among non-diseased: more now test positive &rarr; FP &uarr;, TN &darr;<\/span>Effect on metrics:<br>&bull; Sensitivity = TP&divide;(TP+FN) &rarr; numerator rises, denominator fixed &rarr; <strong>sensitivity rises<\/strong><br>&bull; Specificity = TN&divide;(FP+TN) &rarr; numerator falls, denominator fixed &rarr; <strong>specificity falls<\/strong><br><br>This is the fundamental <strong>sensitivity-specificity trade-off<\/strong>: they move in opposite directions when the cut-off changes. The total number of diseased and non-diseased people does not change \u2014 only how the test classifies them shifts. Prevalence plays no role in this cut-off direction question. Trap B and C each describe only half the story. Trap D incorrectly invokes prevalence as the determining variable.'\n    }\n\n  ];\n\n  var answers = {}, answered = 0, shuffled = {}, done = false;\n\n  function gid(s) { return document.getElementById(NS + '-' + s); }\n  function byId(s) { return document.getElementById(s); }\n\n  function shuffleArr(arr) {\n    var a = arr.slice(), i, j, t;\n    for (i = a.length - 1; i > 0; i--) {\n      j = Math.floor(Math.random() * (i + 1));\n      t = a[i]; a[i] = a[j]; a[j] = t;\n    }\n    return a;\n  }\n\n  function countVal(v) {\n    var n = 0, k;\n    for (k in answers) { if (answers[k] === v) n++; }\n    return n;\n  }\n\n  function buildPips() {\n    var cont = gid('pips'), i, q, wLine, wPip, line, pip;\n    cont.innerHTML = '';\n    for (i = 0; i < QS.length; i++) {\n      q = QS[i];\n      if (i > 0) {\n        wLine = document.createElement('div');\n        wLine.className = 'mr-pip-wrap';\n        line = document.createElement('div');\n        line.className = 'mr-pip-line';\n        line.id = NS + '-pl' + q.id;\n        wLine.appendChild(line);\n        cont.appendChild(wLine);\n      }\n      wPip = document.createElement('div');\n      wPip.className = 'mr-pip-wrap';\n      pip = document.createElement('div');\n      pip.className = 'mr-pip';\n      pip.id = NS + '-pip' + q.id;\n      pip.textContent = String(q.id);\n      wPip.appendChild(pip);\n      cont.appendChild(wPip);\n    }\n  }\n\n  function build() {\n    var cont, i, q, opts, card, top, numDiv, meta, tag, stem,\n        rule, optsDiv, expDiv, lbl, txt, j, optEl, ltrSpan, txtSpan;\n\n    cont = gid('cases');\n    cont.innerHTML = '';\n    answers = {}; answered = 0; shuffled = {}; done = false;\n    gid('score').style.display = 'none';\n    buildPips();\n\n    for (i = 0; i < QS.length; i++) {\n      q = QS[i];\n      opts = shuffleArr(q.opts);\n      shuffled[q.id] = opts;\n\n      card = document.createElement('div');\n      card.className = 'mr-case';\n\n      top = document.createElement('div');\n      top.className = 'mr-case-top';\n\n      numDiv = document.createElement('div');\n      numDiv.className = 'mr-num';\n      numDiv.textContent = q.id < 10 ? '0' + q.id : String(q.id);\n\n      meta = document.createElement('div');\n      meta.className = 'mr-meta';\n\n      tag = document.createElement('div');\n      tag.className = 'mr-tag';\n      tag.innerHTML = q.tag;\n\n      stem = document.createElement('div');\n      stem.className = 'mr-stem';\n      stem.innerHTML = q.stem;\n\n      meta.appendChild(tag);\n      meta.appendChild(stem);\n      top.appendChild(numDiv);\n      top.appendChild(meta);\n      card.appendChild(top);\n\n      rule = document.createElement('div');\n      rule.className = 'mr-rule';\n      card.appendChild(rule);\n\n      optsDiv = document.createElement('div');\n      optsDiv.className = 'mr-opts';\n\n      for (j = 0; j < opts.length; j++) {\n        optEl = document.createElement('div');\n        optEl.className = 'mr-opt';\n        optEl.id = NS + '-o' + q.id + '-' + j;\n        optEl.setAttribute('role', 'button');\n        optEl.setAttribute('tabindex', '0');\n\n        ltrSpan = document.createElement('span');\n        ltrSpan.className = 'mr-ltr';\n        ltrSpan.textContent = LTRS[j];\n\n        txtSpan = document.createElement('span');\n        txtSpan.className = 'mr-opt-text';\n        txtSpan.innerHTML = opts[j];\n\n        optEl.appendChild(ltrSpan);\n        optEl.appendChild(txtSpan);\n        optsDiv.appendChild(optEl);\n\n        (function (qid, oi) {\n          optEl.addEventListener('click', function () { pick(qid, oi); });\n        }(q.id, j));\n      }\n      card.appendChild(optsDiv);\n\n      expDiv = document.createElement('div');\n      expDiv.className = 'mr-exp';\n      expDiv.id = NS + '-exp' + q.id;\n\n      lbl = document.createElement('div');\n      lbl.className = 'mr-exp-lbl';\n      lbl.textContent = 'Debrief';\n\n      txt = document.createElement('div');\n      txt.className = 'mr-exp-text';\n      txt.innerHTML = q.exp;\n\n      expDiv.appendChild(lbl);\n      expDiv.appendChild(txt);\n      card.appendChild(expDiv);\n      cont.appendChild(card);\n    }\n  }\n\n  function pick(qid, oi) {\n    var q, opts, i, el, correct;\n    if (answers[qid] !== undefined || done) return;\n\n    q = null;\n    for (i = 0; i < QS.length; i++) {\n      if (QS[i].id === qid) { q = QS[i]; break; }\n    }\n    if (!q) return;\n\n    opts = shuffled[qid];\n    correct = (opts[oi] === q.correct);\n    answers[qid] = correct ? 'c' : 'w';\n    answered++;\n\n    for (i = 0; i < opts.length; i++) {\n      el = byId(NS + '-o' + qid + '-' + i);\n      if (opts[i] === q.correct) {\n        el.className = 'mr-opt correct locked';\n      } else if (i === oi) {\n        el.className = 'mr-opt wrong locked';\n      } else {\n        el.className = 'mr-opt dimmed locked';\n      }\n    }\n\n    byId(NS + '-exp' + qid).style.display = 'block';\n    byId(NS + '-pip' + qid).className = 'mr-pip ' + (correct ? 'correct' : 'wrong');\n\n    if (qid > 1) {\n      var pl = byId(NS + '-pl' + qid);\n      if (pl) { pl.className = 'mr-pip-line done'; }\n    }\n  }\n\n  function showScore() {\n    var c, w, s, net, pct, disp, verdicts, vi, sc;\n    if (done) return;\n    done = true;\n\n    c = countVal('c');\n    w = countVal('w');\n    s = TOTAL - answered;\n    net  = (c * 4) - w;\n    pct  = Math.max(0, Math.round((net \/ MAX) * 100));\n    disp = Math.min(100, Math.max(0, pct));\n\n    gid('ring').style.background =\n      'conic-gradient(#1A5F7A ' + disp + '%, #B8D8E3 0%)';\n\n    gid('pct').textContent = pct + '%';\n    gid('net').textContent = 'Net Score: ' + net + ' \/ ' + MAX;\n\n    verdicts = [\n      [5, 'Flawless. The 2\\u00d72 table, its four cells, and the cut-off trade-off \\u2014 all owned cold.'],\n      [4, 'Strong start. One cell or rate to consolidate \\u2014 the debrief has it.'],\n      [3, 'Good base. Q4 (false positive rate vs PPV) and Q5 (cut-off direction) are the ones to re-read.'],\n      [2, 'The foundation is the table itself. Re-read Q1 and Q3 debriefs \\u2014 fill cells from prevalence first, then apply sensitivity and specificity.'],\n      [0, 'Start with Q1 and Q3: build the table mechanically before worrying about rates. The arithmetic is simple once the cells are right.']\n    ];\n    gid('verdict').textContent = verdicts[4][1];\n    for (vi = 0; vi < verdicts.length; vi++) {\n      if (c >= verdicts[vi][0]) {\n        gid('verdict').innerHTML = verdicts[vi][1];\n        break;\n      }\n    }\n\n    gid('ct-c').textContent = '\\u2705 ' + c + ' Correct';\n    gid('ct-w').textContent = '\\u274C ' + w + ' Wrong';\n    gid('ct-s').textContent = '\\u23ED ' + s + ' Skipped';\n\n    sc = gid('score');\n    sc.style.display = 'block';\n    sc.scrollIntoView({ behavior: 'smooth', block: 'center' });\n  }\n\n  function tryInit() {\n    var sentinel = document.getElementById(NS + '-sentinel');\n    var submit   = document.getElementById(NS + '-submit');\n    var retry    = document.getElementById(NS + '-retry');\n    if (!sentinel || !submit || !retry) {\n      setTimeout(tryInit, 80);\n      return;\n    }\n    submit.addEventListener('click', showScore);\n    retry.addEventListener('click', function () {\n      build();\n      window.scrollTo(0, 0);\n    });\n    var bar = document.getElementById(NS + '-progress');\n    if (bar && window.IntersectionObserver) {\n      new IntersectionObserver(function (entries) {\n        bar.className = entries[0].isIntersecting ? 'mr-progress' : 'mr-progress visible';\n      }, { threshold: 0 }).observe(sentinel);\n    }\n    build();\n  }\n\n  tryInit();\n\n}());\n<\/script>\n\n<\/html>\n\n\n","protected":false},"excerpt":{"rendered":"<p>Morning Rounds \u00b7 PSM Numericals \u00b7 Round 01 Numerical Series &middot; PSM Biostatistics Morning Rounds &middot; Round 01 of 07 The 2&times;2 Table &amp;Its Four Cells Five questions &middot; Building the table, filling cells &amp; reading what each number actually means 5 Questions +4 \/ &minus;1 scoring Options reshuffled Submit for Debrief Round Complete 0%&hellip;&nbsp;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","footnotes":""},"categories":[74,96],"tags":[97],"class_list":["post-37365","post","type-post","status-publish","format-standard","hentry","category-morning-rounds","category-psm","tag-biostatistics"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Biostatistics - atsixty<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/atsixty.com\/index.php\/morning-rounds\/biostatistics\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Biostatistics - atsixty\" \/>\n<meta property=\"og:description\" content=\"Morning Rounds \u00b7 PSM Numericals \u00b7 Round 01 Numerical Series &middot; PSM Biostatistics Morning Rounds &middot; Round 01 of 07 The 2&times;2 Table &amp;Its Four Cells Five questions &middot; Building the table, filling cells &amp; reading what each number actually means 5 Questions +4 \/ &minus;1 scoring Options reshuffled Submit for Debrief Round Complete 0%&hellip;&nbsp;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/atsixty.com\/index.php\/morning-rounds\/biostatistics\/\" \/>\n<meta property=\"og:site_name\" content=\"atsixty\" \/>\n<meta property=\"article:published_time\" content=\"2026-08-23T07:51:38+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-08-23T13:55:02+00:00\" \/>\n<meta name=\"author\" content=\"Avi\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Avi\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/atsixty.com\\\/index.php\\\/morning-rounds\\\/biostatistics\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/atsixty.com\\\/index.php\\\/morning-rounds\\\/biostatistics\\\/\"},\"author\":{\"name\":\"Avi\",\"@id\":\"https:\\\/\\\/atsixty.com\\\/#\\\/schema\\\/person\\\/cf65e7ac7d8226d95c0bdf1036f7951d\"},\"headline\":\"Biostatistics\",\"datePublished\":\"2026-08-23T07:51:38+00:00\",\"dateModified\":\"2026-08-23T13:55:02+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/atsixty.com\\\/index.php\\\/morning-rounds\\\/biostatistics\\\/\"},\"wordCount\":53,\"publisher\":{\"@id\":\"https:\\\/\\\/atsixty.com\\\/#\\\/schema\\\/person\\\/cf65e7ac7d8226d95c0bdf1036f7951d\"},\"keywords\":[\"Biostatistics\"],\"articleSection\":[\"Morning Rounds\",\"PSM\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/atsixty.com\\\/index.php\\\/morning-rounds\\\/biostatistics\\\/\",\"url\":\"https:\\\/\\\/atsixty.com\\\/index.php\\\/morning-rounds\\\/biostatistics\\\/\",\"name\":\"Biostatistics - atsixty\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/atsixty.com\\\/#website\"},\"datePublished\":\"2026-08-23T07:51:38+00:00\",\"dateModified\":\"2026-08-23T13:55:02+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/atsixty.com\\\/index.php\\\/morning-rounds\\\/biostatistics\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/atsixty.com\\\/index.php\\\/morning-rounds\\\/biostatistics\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/atsixty.com\\\/index.php\\\/morning-rounds\\\/biostatistics\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/atsixty.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Biostatistics\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/atsixty.com\\\/#website\",\"url\":\"https:\\\/\\\/atsixty.com\\\/\",\"name\":\"At Sixty\",\"description\":\"The Option Taken\",\"publisher\":{\"@id\":\"https:\\\/\\\/atsixty.com\\\/#\\\/schema\\\/person\\\/cf65e7ac7d8226d95c0bdf1036f7951d\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/atsixty.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/atsixty.com\\\/#\\\/schema\\\/person\\\/cf65e7ac7d8226d95c0bdf1036f7951d\",\"name\":\"Avi\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/atsixty.com\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/logo-agency.png\",\"url\":\"https:\\\/\\\/atsixty.com\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/logo-agency.png\",\"contentUrl\":\"https:\\\/\\\/atsixty.com\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/logo-agency.png\",\"width\":200,\"height\":200,\"caption\":\"Avi\"},\"logo\":{\"@id\":\"https:\\\/\\\/atsixty.com\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/logo-agency.png\"},\"sameAs\":[\"https:\\\/\\\/atsixty.com\"],\"url\":\"https:\\\/\\\/atsixty.com\\\/index.php\\\/author\\\/avinaux\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Biostatistics - atsixty","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/atsixty.com\/index.php\/morning-rounds\/biostatistics\/","og_locale":"en_US","og_type":"article","og_title":"Biostatistics - atsixty","og_description":"Morning Rounds \u00b7 PSM Numericals \u00b7 Round 01 Numerical Series &middot; PSM Biostatistics Morning Rounds &middot; Round 01 of 07 The 2&times;2 Table &amp;Its Four Cells Five questions &middot; Building the table, filling cells &amp; reading what each number actually means 5 Questions +4 \/ &minus;1 scoring Options reshuffled Submit for Debrief Round Complete 0%&hellip;&nbsp;","og_url":"https:\/\/atsixty.com\/index.php\/morning-rounds\/biostatistics\/","og_site_name":"atsixty","article_published_time":"2026-08-23T07:51:38+00:00","article_modified_time":"2026-08-23T13:55:02+00:00","author":"Avi","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Avi","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/atsixty.com\/index.php\/morning-rounds\/biostatistics\/#article","isPartOf":{"@id":"https:\/\/atsixty.com\/index.php\/morning-rounds\/biostatistics\/"},"author":{"name":"Avi","@id":"https:\/\/atsixty.com\/#\/schema\/person\/cf65e7ac7d8226d95c0bdf1036f7951d"},"headline":"Biostatistics","datePublished":"2026-08-23T07:51:38+00:00","dateModified":"2026-08-23T13:55:02+00:00","mainEntityOfPage":{"@id":"https:\/\/atsixty.com\/index.php\/morning-rounds\/biostatistics\/"},"wordCount":53,"publisher":{"@id":"https:\/\/atsixty.com\/#\/schema\/person\/cf65e7ac7d8226d95c0bdf1036f7951d"},"keywords":["Biostatistics"],"articleSection":["Morning Rounds","PSM"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/atsixty.com\/index.php\/morning-rounds\/biostatistics\/","url":"https:\/\/atsixty.com\/index.php\/morning-rounds\/biostatistics\/","name":"Biostatistics - atsixty","isPartOf":{"@id":"https:\/\/atsixty.com\/#website"},"datePublished":"2026-08-23T07:51:38+00:00","dateModified":"2026-08-23T13:55:02+00:00","breadcrumb":{"@id":"https:\/\/atsixty.com\/index.php\/morning-rounds\/biostatistics\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/atsixty.com\/index.php\/morning-rounds\/biostatistics\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/atsixty.com\/index.php\/morning-rounds\/biostatistics\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/atsixty.com\/"},{"@type":"ListItem","position":2,"name":"Biostatistics"}]},{"@type":"WebSite","@id":"https:\/\/atsixty.com\/#website","url":"https:\/\/atsixty.com\/","name":"At Sixty","description":"The Option Taken","publisher":{"@id":"https:\/\/atsixty.com\/#\/schema\/person\/cf65e7ac7d8226d95c0bdf1036f7951d"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/atsixty.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/atsixty.com\/#\/schema\/person\/cf65e7ac7d8226d95c0bdf1036f7951d","name":"Avi","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/atsixty.com\/wp-content\/uploads\/2025\/08\/logo-agency.png","url":"https:\/\/atsixty.com\/wp-content\/uploads\/2025\/08\/logo-agency.png","contentUrl":"https:\/\/atsixty.com\/wp-content\/uploads\/2025\/08\/logo-agency.png","width":200,"height":200,"caption":"Avi"},"logo":{"@id":"https:\/\/atsixty.com\/wp-content\/uploads\/2025\/08\/logo-agency.png"},"sameAs":["https:\/\/atsixty.com"],"url":"https:\/\/atsixty.com\/index.php\/author\/avinaux\/"}]}},"_links":{"self":[{"href":"https:\/\/atsixty.com\/index.php\/wp-json\/wp\/v2\/posts\/37365","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/atsixty.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/atsixty.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/atsixty.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/atsixty.com\/index.php\/wp-json\/wp\/v2\/comments?post=37365"}],"version-history":[{"count":2,"href":"https:\/\/atsixty.com\/index.php\/wp-json\/wp\/v2\/posts\/37365\/revisions"}],"predecessor-version":[{"id":37367,"href":"https:\/\/atsixty.com\/index.php\/wp-json\/wp\/v2\/posts\/37365\/revisions\/37367"}],"wp:attachment":[{"href":"https:\/\/atsixty.com\/index.php\/wp-json\/wp\/v2\/media?parent=37365"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/atsixty.com\/index.php\/wp-json\/wp\/v2\/categories?post=37365"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/atsixty.com\/index.php\/wp-json\/wp\/v2\/tags?post=37365"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}