回归模型
一元和多元线性回归是计量分析的基础。
一元: Y = α + βX + ε
多元: Y = α + β₁X₁ + β₂X₂ + ... + ε
OLS: β̂ = (X'X)⁻¹X'Y
library(stats)
set.seed(42)
n <- 200
X1 <- rnorm(n, 50, 15)
X2 <- rnorm(n, 30, 10)
Y <- 10 + 1.5*X1 + 0.8*X2 + rnorm(n, 0, 5)
model <- lm(Y ~ X1 + X2)
summary(model)
new_data <- data.frame(X1=55, X2=32)
pred <- predict(model, new_data, interval="prediction")
cat("预测值:", pred[, 1], "\n")
import numpy as np
import pandas as pd
from sklearn.linear_model import LinearRegression
np.random.seed(42)
n = 200
X1 = np.random.normal(50, 15, n)
X2 = np.random.normal(30, 10, n)
Y = 10 + 1.5*X1 + 0.8*X2 + np.random.normal(0, 5, n)
X = np.column_stack([X1, X2])
model = LinearRegression()
model.fit(X, Y)
print("截距:", model.intercept_)
print("系数:", model.coef_)
new_X = np.array([[55, 32]])
pred = model.predict(new_X)
print("预测值:", pred[0])