数据挖掘学习笔记:数值预测代码实践

本文深入探讨了机器学习中的三种基本算法:线性回归、回归树和K近邻。通过实例代码展示了每种算法的工作原理及应用,为初学者提供了一个清晰的学习路径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

线性回归

回归树

K近邻


线性回归

"""
简单的线性回归例子
"""
from sklearn import linear_model

X = [[0, 0], [1, 1], [2, 2]]
y = [0, 1, 2]

reg = linear_model.LinearRegression()
reg.fit(X, y)  # 训练模型 X-training data;y-target values
z = reg.coef_  # 线性回归函数的参数
k = reg.predict([[3, 3]])  # 预测[3,3]对应的值

print(z, k)

回归树

"""
回归树
"""
from sklearn import tree

X = [[0, 0], [1, 1], [2, 2]]
y = [0, 1, 2]

dt_reg_test = tree.DecisionTreeRegressor()
dt_reg_test = dt_reg_test.fit(X, y)  # 训练模型
re = dt_reg_test.predict([[3, 3]])  # 预测
print(re)

K近邻

"""
K近邻回归
"""

import numpy as np
import matplotlib.pyplot as plt
from sklearn import neighbors

# 生成样本数据,并加入随机误差
np.random.seed(0)
X = np.sort(5 * np.random.rand(40, 1), axis=0)
T = np.linspace(0, 5, 500)[:, np.newaxis]
y = np.sin(X).ravel()
# 加入随机误差
y[::5] += 1 * (0.5 - np.random.rand(8))

# 拟合模型,并画图对比
n_neighbors = 5

for i, weights in enumerate(['uniform', 'distance']):
    knn = neighbors.KNeighborsRegressor(n_neighbors, weights=weights)
    y_ = knn.fit(X, y).predict(T)

    plt.subplot(2, 1, i + 1)
    plt.scatter(X, y, c='k', label='data')
    plt.plot(T, y_, c='g', label='prediction')
    plt.axis('tight')
    plt.legend()
    plt.title("KNeighborsRegressor (k = %i,weights = '%s')" % (n_neighbors, weights))

plt.show()

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值