Matplotlib基础03:波士顿房价数据集可视化

Matplotlib基础03:利用已学知识绘制boston房价的影响因素表

波士顿房价数据集介绍

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

散点图描绘这些因素对房价的影响

1.我们先下载数据集

boston = tf.keras.datasets.boston_housing
#加载数据,分训练集与测试集
(train_x,train_y),(test_x,test_y) = boston.load_data(test_split=0) #我们让测试数据为0,这里的test_split是划分数据集中测试集的比例的

print(len(train_x))
print(len(test_x))

会出现下载
在这里插入图片描述
2.访问数据集中的元素
在这里插入图片描述
3.分割数据x,分别画散点图

import matplotlib 
import matplotlib.pyplot as plt
import numpy as np 
import tensorflow as tf 
boston = tf.keras.datasets.boston_housing
#加载数据,分训练集与测试集
(train_x,train_y),(test_x,test_y) = boston.load_data(test_split=0) #我们让测试数据为0

print(len(train_x))
print(len(test_x))

print(train_x.shape)#(506,13)
print(train_y.shape)#(506,)
factor = ['城市人均犯罪率',"超过25000平方英尺的住在用地所占比例",
"城镇非零售业的商业用地所占比例","是否被Charles河流穿过",
"一氧化碳浓度","每栋住宅的平均房间数",
"早于1940年建成的自住房屋比例 ","到波士顿5个中心区域的加权平均距离",
"到达高速公路的便利指数","每10000美元的全值财产税率","城镇中师生比例 ",
"反映城镇中的黑人比例的指标","低收入人口的比例 ",
"自住房屋房价的平均房价(单位为1000美元) "]
#下面开始绘制图片
#由shape我们知道x里边影响房价的有13个因素,对应着房价
#我们现在要做的就是将这些因素一一与房价分析
#配置中文与负号
plt.rcParams['font.family'] = 'SimHei'
plt.rcParams["axes.unicode_minus"] = False
plt.figure(num='13辅图',figsize=(13,10))

#第一步,逐一取出这些因素
for i in range(13):
    #划分子图
    plt.subplot(4,4,i+1)
    #绘制散点图
    plt.scatter(train_x[:,i],train_y,s=3)
    #设置纵坐标
    plt.ylabel("prices($1000's)")
    #设置子图题目
    plt.title(factor[i],loc="left",backgroundcolor='red')
#设置填充
plt.tight_layout()
#设置全局标题
plt.suptitle("各个因素与房价的关系",backgroundcolor='y',verticalalignment='bottom')
plt.show()

在这里插入图片描述
从图中,我们就能分析哪些因素最影响房价了,当然,不同的影响因素,用散点图不一定合适。

很抱歉,我之前的回答中漏掉了代码部分。以下是基于Spark的波士顿房价预测数据可视化阶段的相关代码,供您参考: ```python # 导入必要的库 from pyspark.sql.functions import col from pyspark.ml.feature import VectorAssembler from pyspark.ml.regression import LinearRegression import matplotlib.pyplot as plt # 读取数据集 df = spark.read.format("csv").option("header", True).option("inferSchema", True).load("boston_housing.csv") # 数据预处理 df = df.select([col(c).cast("double").alias(c) for c in df.columns]) assembler = VectorAssembler(inputCols=df.columns[:-1], outputCol="features") df = assembler.transform(df) # 训练模型 lr = LinearRegression(featuresCol="features", labelCol="medv", maxIter=10, regParam=0.3, elasticNetParam=0.8) model = lr.fit(df) # 预测 predictions = model.transform(df) # 可视化 plt.scatter(predictions.select("medv").rdd.flatMap(lambda x: x).collect(), predictions.select("prediction").rdd.flatMap(lambda x: x).collect()) plt.xlabel("True Values") plt.ylabel("Predictions") plt.show() ``` 这段代码将波士顿房价数据集加载到Spark中,进行了数据预处理、建模和预测,并使用Matplotlib库将结果可视化呈现。具体而言,代码首先读取CSV格式的数据集,并对所有列进行类型转换,将其转换为double类型。然后,使用VectorAssembler将所有特征列组合成一个名为“features”的向量列。接着,使用LinearRegression算法训练模型,并使用模型对数据集进行预测。最后,使用Matplotlib库将真实值和预测值作为横纵坐标进行散点图可视化。 需要注意的是,这段代码是一个简单的示例,具体的实现方式可能会根据您的需求和数据集的特点而有所不同。希望这些代码能够对您的工作有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雨夜※繁华

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值