python线性回归数据生成
时间: 2023-12-04 11:06:25 浏览: 100
Python实现线性回归
以下是使用Python生成线性回归数据的示例代码:
```python
import numpy as np
import random
# 设置随机种子,确保每次生成的数据相同
random.seed(0)
# 生成数据
def generate_linear_data(num_samples, num_features, slope, intercept, std_dev):
X = np.zeros(shape=(num_samples, num_features))
y = np.zeros(shape=(num_samples, 1))
for i in range(num_samples):
x = np.random.rand(1, num_features)
X[i, :] = x
noise = np.random.normal(0, std_dev)
y[i, 0] = np.dot(x, slope) + intercept + noise
return X, y
# 设置参数
num_samples = 1000
num_features = 2
slope = np.array([[1], [2]])
intercept = 3
std_dev = 0.1
# 生成数据
X, y = generate_linear_data(num_samples, num_features, slope, intercept, std_dev)
# 打印数据
print("X shape:", X.shape)
print("y shape:", y.shape)
print("First 5 X samples:\n", X[:5, :])
print("First 5 y samples:\n", y[:5, :])
```
在这个示例中,我们生成了1000个样本,每个样本有2个特征。我们使用了斜率为[1,2],截距为3的线性模型,并添加了标准差为0.1的高斯噪声。你可以根据需要修改参数来生成不同的数据集。
阅读全文