Logistic Regression Model Building
Building a reliable Logistic Regression model involves more than just calling .fit() - it's a sequence of deliberate steps that shape how well the model performs on new data.
The Model Building Workflow
1. Collect and clean the data
2. Select relevant features
3. Split data into train and test sets
4. Scale/standardize features (if needed)
5. Fit the Logistic Regression model
6. Generate predictions on the test set
7. Evaluate performance
Implementing in Python
import pandas as pd
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
df = pd.DataFrame({
"Income": [20000, 25000, 30000, 40000, 50000, 60000, 70000, 80000],
"Age": [22, 25, 28, 32, 35, 40, 45, 50],
"Buys": [0, 0, 0, 1, 1, 1, 1, 1]
})
X = df[["Income", "Age"]]
y = df["Buys"]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=42)
scaler = StandardScaler()
X_train_scaled = scaler.fit_transform(X_train)
X_test_scaled = scaler.transform(X_test)
model = LogisticRegression()
model.fit(X_train_scaled, y_train)
print(model.predict(X_test_scaled))
Why Scaling Matters
Logistic Regression relies on gradient-based optimization, so features on very different scales (like income in thousands versus age in years) can slow convergence or bias the model - scaling puts every feature on comparable footing.
Always fit the scaler only on training data, then use it to transform the test data - fitting on the full dataset can leak information and produce overly optimistic results.
Coming Up Next
Next, you'll learn how to properly evaluate the performance of a Logistic Regression model.