# Generate sample data
set.seed(123)
n <- 100
p <- 3
X <- matrix(rnorm(n * p), n, p)
# Add intercept column
X <- cbind(1, X)
colnames(X) <- c("(Intercept)", "X1", "X2", "X3")
# True coefficients
beta_true <- c(0.5, 1.2, -0.8, 0.3)
# Generate linear predictor
eta <- X %*% beta_true
# Generate binary outcome
prob <- 1 / (1 + exp(-eta))
y <- rbinom(n, 1, prob)
# Fit logistic regression
result <- fit_logistic_regression(X, y)
# View coefficients and statistics
print(data.frame(
Coefficient = result$coefficients,
Std_Error = result$se,
Z_score = result$z_scores,
P_value = result$p_values
))
# Check convergence
cat("Converged:", result$convergence, "\n")
cat("Log-Likelihood:", result$loglikelihood, "\n")
Run the code above in your browser using DataLab