Running Analysis
Configure and run statistical analyses with full provenance tracking.
Analysis Overview
Medtwin supports:
- Descriptive statistics (Table 1)
- Comparative analyses (t-tests, chi-square)
- Regression models (linear, logistic, Cox)
- Survival analysis (Kaplan-Meier, log-rank)
- Propensity matching
Creating an Analysis
Step 1: Open Analysis Config
- Navigate to your project
- Click Analysis Config in the sidebar
- Click New Analysis
Step 2: Select Analysis Type
Choose from:
| Type | Use Case |
|---|---|
| Descriptive | Summarize cohort characteristics |
| Comparative | Compare two groups |
| Logistic Regression | Binary outcome prediction |
| Linear Regression | Continuous outcome prediction |
| Cox Regression | Time-to-event analysis |
| Kaplan-Meier | Survival curves |
| Propensity Matching | Reduce selection bias |
Step 3: Configure Variables
Outcome Variable
Select your primary endpoint:
Predictor Variables
Select variables to include:
Predictors:
✓ age (Continuous)
✓ sex (Categorical)
✓ diabetes (Binary)
✓ lvef (Continuous)
✓ procedure_type (Categorical)
Grouping Variable (if comparative)
Step 4: Advanced Options
Configure analysis parameters:
Model Options:
- Include interaction terms: No
- Variable selection: Stepwise
- P-value threshold: 0.05
- Confidence interval: 95%
Running the Analysis
Execute
Click Run Analysis to start.
You'll see:
- Queued: Analysis is scheduled
- Running: Computation in progress
- Complete: Results ready
Run Details
Each run is assigned:
- Run ID: Unique identifier (e.g.,
RUN-00234) - Timestamp: When executed
- Data Version: Which data version used
- Config Version: Which config used
Viewing Results
Summary Tab
Quick overview of findings:
LOGISTIC REGRESSION RESULTS
───────────────────────────
Outcome: mortality_30d
N = 847 (27 events)
AUC = 0.82
Top Predictors:
1. Emergency surgery (OR 3.8, p<0.001)
2. Age ≥75 (OR 2.41, p=0.003)
3. Diabetes (OR 2.31, p=0.008)
Tables Tab
Detailed output tables:
- Table 1: Baseline characteristics
- Table 2: Univariate analysis
- Table 3: Multivariate model
Diagnostics Tab
Model quality checks:
- Hosmer-Lemeshow: Goodness of fit
- VIF: Multicollinearity check
- Residual plots: Assumption validation
Code Tab
View the exact computation:
from statsmodels.api import Logit
model = Logit(
endog=df['mortality_30d'],
exog=df[['age', 'sex', 'diabetes', 'lvef']]
).fit()
Using Results in Paper
Insert Statistics
- Click a statistic in results
- Click Insert in Paper
- Statistic appears as verified chip
Auto-Generate Tables
- Select a result table
- Click Insert as Figure
- Table is formatted for publication
Run History
View all previous runs:
- Compare results across runs
- See what changed
- Revert to previous config
Reproducibility
Every analysis is reproducible:
- Same data version: Pinned to specific upload
- Same config: Saved configuration
- Same code: Deterministic execution
- Same results: Bit-for-bit identical
Audit Ready
Click any Run ID to export complete audit trail.
Best Practices
Analysis Tips
- Start with descriptive analysis (Table 1)
- Check assumptions before regression
- Document your analysis plan before running
- Use meaningful variable names in output
- Save configurations for reproducibility