Prepare cohort summaries
Separate unique participants, trips, and observations before drawing comparisons. Keep route, direction, and crew-role definitions explicit.
CASE STUDY 03 / RESEARCH TOOLS
Turning complex research cohorts into explorable views without hiding denominators.
How can collaborators explore fatigue, sleep, and performance patterns while keeping the selected cohort visible?
R Shiny notebooks prepare route-level source tables and expose filters for route, crew role, flight phase, operation type, and other research subgroups.
THE STORY IN PLAIN LANGUAGE
Rather than sending a separate figure for every subgroup question, linked filters expose the cohort behind a view. Counts, plots, and tables give collaborators a way to investigate patterns while keeping the meaning of the denominator visible.
The stack follows the analytical task: prepare the data, fit or apply the method, check the result, and communicate the output.
See how the libraries connect to the wider portfolio →THE PROJECT, STEP BY STEP
Separate unique participants, trips, and observations before drawing comparisons. Keep route, direction, and crew-role definitions explicit.
Use Shiny filters to recalculate cohort counts, summaries, Plotly visualizations, and DT tables together.
Present exploratory comparisons beside sample sizes and filtered records so viewers can understand what each chart includes.
THE TECHNICAL CASE
A research dashboard is an analytical interface. Every filter changes the population represented by the chart, so cohort counts and data tables need to update with the same logic as the visualization.
The Shiny notebooks transform route-level source tables into fields suitable for filtering and display. This preparation includes operational categories and measurement phases so a filter has a defined meaning.
Route, crew-role, flight-phase, and operation-type selections drive the research views. Shiny reactivity connects selection state to summaries, Plotly charts, and DT tables, reducing the chance that one view represents a different cohort.
A unique participant, a trip, and a measurement row are different units. Counting rows as participants would overstate cohort size whenever a person contributes repeated observations. The display needs to keep these concepts explicit.
Interactive plots let collaborators examine subgroup patterns, while tables expose the records behind a view. Sample availability and sparse selections determine how much weight a visual difference deserves.
Selected cohort → shared reactive data → counts + summaries + plots + tables
A shared filtered dataset keeps the denominator consistent across outputs. An exploratory dashboard supports inspection and does not itself establish a confirmatory comparison.
EXPLORE THE METHOD
A small synthetic dataset demonstrates linked filters, unique participant counts, repeat trips, and observed outcomes. This is a portfolio demonstration, not the internal Shiny application.
QUALITY OF THE EVIDENCE
A filter combination with no eligible records should show an explicit empty state instead of an old chart.
Reconcile chart observations and table rows against the same filtered data and separately count distinct participants and trips.
Show the number with an observed endpoint; do not let a total cohort count imply complete outcome availability.
Inspect route × role × phase combinations and avoid comparing groups with incompatible operational definitions.
FOR THE TECHNICAL CONVERSATION
Interview discussion can focus on reactive dependency design, the difference between input validation and statistical validation, and how a dashboard communicates uncertainty without overwhelming its users.
WHAT IT DEMONSTRATES
Researchers can inspect patterns by operational subgroup through interactive plots and tables.