CtrlK
BlogDocsLog inGet started
Tessl Logo

regression-modeler

Run regression analysis (OLS or logistic) on uploaded CSV/Excel data, generating coefficients, R², p-values, VIF, and plain-language interpretation. Triggered by requests for regression modeling, fitting data, testing significance, checking multicollinearity, or keywords like OLS, logit, coefficient, p-value, or R-squared.

80

Quality

100%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

regression-modeler

Automated regression modeling tool — performs linear regression (OLS) or logistic regression (Logit) on tabular data, producing comprehensive statistical results with plain-language interpretation.

Capabilities

FeatureDescription
Linear RegressionOLS with coefficients, R², adjusted R², F-test, AIC/BIC, Durbin-Watson
Logistic RegressionLogit with coefficients, Odds Ratio, Pseudo R², likelihood ratio test
Multicollinearity DetectionVIF values for each predictor with warning levels
Plain-Language InterpretationClear explanations of what each metric and coefficient means
Auto DetectionAutomatically switches to logistic regression when the target is binary (0/1)

Quick Start

# Linear regression: predict price using all numeric columns as predictors
python3 scripts/regression_analyzer.py data.csv --target price

# Logistic regression: predict churn (0/1) with specified features
python3 scripts/regression_analyzer.py users.csv --target churn --features "age,income,tenure"

# Save results to JSON
python3 scripts/regression_analyzer.py data.csv --target sales --output result.json

Detailed Usage

Basic Invocation

python3 scripts/regression_analyzer.py <data_file> --target <target_column> [options]

Specifying Regression Type

# Force linear regression
python3 scripts/regression_analyzer.py data.csv -t y --type linear

# Force logistic regression
python3 scripts/regression_analyzer.py data.csv -t label --type logistic

# Auto-detect (default)
python3 scripts/regression_analyzer.py data.csv -t y --type auto

Selecting Feature Columns

# Manually specify (comma-separated)
python3 scripts/regression_analyzer.py data.csv -t price -f "sqft,bedrooms,bathrooms"

# Omit to automatically use all numeric columns
python3 scripts/regression_analyzer.py data.csv -t price

Parameters

ParameterShortRequiredDefaultDescription
inputYesInput file path (CSV/TSV/Excel/JSON)
--target-tYesTarget variable (dependent variable) column name
--features-fNoAll numeric columnsPredictor column names, comma-separated
--type-TNoautoRegression type: linear / logistic / auto
--output-oNostdoutOutput JSON file path
--no-constNofalseDo not add an intercept term
--keep-naNofalseKeep rows with missing values (for debugging)

Output Structure (JSON)

{
  "type": "linear",
  "r_squared": 0.8523,
  "r_squared_adj": 0.8471,
  "f_statistic": 162.34,
  "f_p_value": 0.0,
  "coefficients": {
    "sqft": {"coefficient": 135.42, "p_value": 0.0001, ...},
    "bedrooms": {"coefficient": 8021.5, "p_value": 0.032, ...}
  },
  "vif": {"sqft": 2.31, "bedrooms": 1.87},
  "interpretation": {
    "model_summary": ["R² = 0.8523 (good model fit...)"],
    "variable_analysis": ["sqft: coefficient = 135.42... positive effect..."]
  }
}

Dependencies

  • Python 3.8+
  • pandas
  • numpy
  • statsmodels
  • scipy
pip install pandas numpy statsmodels scipy
Repository
zebbern/claude-code-guide
Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.