基于线性回归算法预测房价

部署运行你感兴趣的模型镜像

# 导入pandas库,用于数据处理和分析
import pandas as pd

# 读取CSV格式的房价数据集
data = pd.read_csv('house_price.csv')

# 打印数据集的前10条记录,用于初步了解数据结构和内容
print("数据集中的前10条记录:")
print(data.head(10))
print("")  # 打印空行,使输出更清晰

# 导入matplotlib库的pyplot模块,用于数据可视化
from matplotlib import pyplot as plt

# 创建一个画布,设置大小为20x5英寸
fig = plt.figure(figsize=(20,5))

# 创建第一个子图(1行3列中的第1个),用于绘制面积与价格的关系
fig1 = plt.subplot(131)
# 绘制散点图:x轴为面积,y轴为价格
plt.scatter(data.loc[:,'面积'], data.loc[:,'价格'])
# 设置子图标题
plt.title('Price VS Size')

# 创建第二个子图(1行3列中的第2个),用于绘制人均收入与价格的关系
fig2 = plt.subplot(132)
# 绘制散点图:x轴为人均收入,y轴为价格
plt.scatter(data.loc[:,'人均收入'], data.loc[:,'价格'])
# 设置子图标题
plt.title('Price VS Income')

# 创建第三个子图(1行3列中的第3个),用于绘制平均房龄与价格的关系
fig3 = plt.subplot(133)
# 绘制散点图:x轴为平均房龄,y轴为价格
plt.scatter(data.loc[:,'平均房龄'], data.loc[:,'价格'])
# 设置子图标题
plt.title('Price VS House_age')

# 显示绘制的所有图形
plt.show()

# 导入numpy库,用于数值计算
import numpy as np

# 从数据中分离特征变量X(所有列除了价格)
X = data.drop(['价格'], axis=1)
# 目标变量y为价格列
y = data.loc[:, '价格']

# 将pandas数据框转换为numpy数组,以便后续模型处理
X = np.array(X)
y = np.array(y)

# 打印转换后的特征和目标变量的形状,确认数据维度是否正确
print(X.shape, y.shape)

# 将目标变量y重塑为二维数组(n行1列),符合sklearn模型的输入要求
y = y.reshape(-1, 1)
# 再次打印形状,确认重塑是否正确
print(X.shape, y.shape)

# 从sklearn库导入线性回归模型
from sklearn.linear_model import LinearRegression

# 创建多因子线性回归模型实例
model_multi = LinearRegression()

# 使用特征变量X和目标变量y训练模型
model_multi.fit(X, y)

# 定义一个测试样本:面积150,人均收入60000,平均房龄5
X_test = np.array([[150, 60000, 5]])

# 使用训练好的模型对测试样本进行房价预测
y_test_predict = model_multi.predict(X_test)

# 打印预测结果
print(y_test_predict)

您可能感兴趣的与本文相关的镜像

Python3.10

Python3.10

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值