数据分析实战—房价特征关系
1.实战内容

(1) 读取房价特征关系表(house_price.npz)绘制离地铁站的距离与单位面积的房价的散点图,并对其进行分析;
import pandas as pd
import numpy as np
import warnings
warnings.filterwarnings("ignore")
import matplotlib.pyplot as plt
import matplotlib
matplotlib.rcParams['font.family'] = 'SimHei'
matplotlib.rcParams['axes.unicode_minus'] = Falsedata = np.load('house_price.npz', encoding='ASCII', allow_pickle=True)
data.files
![]()
columns = data['arr_0']
columns
![]()
values = data['arr_1']
values

year = values[:, 0]
age = values[:, 1]
distance = values[:, 2]
store = values[:, 3]
price = values[:, 4]
p = plt.figure(figsize=(8, 8))
plt.scatter(distance, price, marker='o')
plt.xlabel('离地铁站的距离')
plt.ylabel('单位面积房价')
plt.savefig('离地铁站的距离与单位面积房价关系图.png')
plt.show()

(2) 创建新画布,将附近的商店个数划分为“0~3”,“4~7”,“8~10”3 个区间,并根据个数贴上 对应的标签:“较少”,“中等”,“较多”。分别计算 3 个区间下单位面积的房价的均值,绘制附近商店的个数与单位面积的房价的柱形图,并进行分析;
# (2)划分和画图
num_0_3 = []
num_4_7 = []
num_8_10 = []
for i in range(len(values)):if 0 <= store[i] < 4:num_0_3.append(price[i])elif 4 <= store[i] < 8:num_4_7.append(price[i])else:num_8_10.append(price[i])mean_num_0_3 = round(np.mean(num_0_3), 2)
mean_num_4_7 = round(np.mean(num_4_7), 2)
mean_num_8_10 = round(np.mean(num_8_10), 2)
mean_all_num = [mean_num_0_3, mean_num_4_7, mean_num_8_10]p = plt.figure(figsize=(8, 8))
label = ['较少', '中等', '较多']
plt.bar(range(3),mean_all_num, width=0.4) # 绘制直方图
plt.xlabel('附近商店数')
plt.ylabel('单位面积房价')
plt.xticks(range(3),label)
plt.savefig('附近商店数与单位面积房价关系图.png')
plt.show()

(3) 创建新画布,根据交易年份绘制饼图,并查看交易年份的分布情况;
#(3)交易年份
import pandas as pd
year_new=pd.DataFrame(year)
year_new=year_new.drop_duplicates()#查看年份
year_new

year_2018 = 0
year_2019 = 0
year_2020 = 0
for i in range(len(values)):if year[i] == 2018:year_2018 += 1elif year[i] == 2019:year_2019 += 1else:year_2020 += 1all_year = [year_2018, year_2019, year_2020]p = plt.figure(figsize=(8, 8))
label= ['2018', '2019', '2020']
explode = [0.01, 0.01, 0.01] # 设定各项离心 n 个半径
plt.pie(all_year, explode=explode, labels=label, autopct='%1.1f%%',
textprops={'fontsize': 20}) # 绘制饼图
plt.title('房屋交易年份分布情况饼图', fontsize=20)
plt.savefig('房屋交易年份总体分布情况饼图.png')
plt.show()
(4) 创建新画布,再子图上分别绘制房屋年龄、离地铁站的距离、附近商店的个数、单位面积的 房价 4 个特征的箱线图,查看是否存在异常值。
# (4)箱线图
p = plt.figure(figsize=(10,10)) # 设置画布
ax1 = p.add_subplot(2, 2, 1)
gdp = (list(age))
plt.boxplot(gdp, notch=True, meanline=True) # 绘制箱线图
plt.ylabel('房屋年龄')
plt.title('房屋年龄分布情况箱线图', fontsize=20)
ax2 = p.add_subplot(2, 2, 2)
gdp = (list(distance))
plt.boxplot(gdp, notch=True, meanline=True) # 绘制箱线图
plt.ylabel('地铁站距离')
plt.title('地铁站距离分布情况箱线图', fontsize=20)ax3 = p.add_subplot(2, 2, 3)
gdp = (list(store))
plt.boxplot(gdp, notch=True, meanline=True) # 绘制箱线图
plt.ylabel('附近商店个数')
plt.title('附近商店个数分布情况箱线图', fontsize=20)
ax4 = p.add_subplot(2, 2, 4)
gdp = (list(price))
plt.boxplot(gdp, notch=True, meanline=True) # 绘制箱线图
plt.ylabel('单位面积房价')
plt.title('单位面积房价分布情况箱线图', fontsize=20)
plt.savefig('各个特征分布情况箱线图.png')
plt.show()
ax2 = p.add_subplot(2, 2, 2)
gdp = (list(distance))
plt.boxplot(gdp, notch=True, meanline=True) # 绘制箱线图
plt.ylabel('地铁站距离')
plt.title('地铁站距离分布情况箱线图', fontsize=20)

相关文章:
数据分析实战—房价特征关系
1.实战内容 (1) 读取房价特征关系表(house_price.npz)绘制离地铁站的距离与单位面积的房价的散点图,并对其进行分析; import pandas as pd import numpy as np import warnings warnings.filterwarnings(&…...
云和恩墨 zCloud 与华为云 GaussDB 完成兼容性互认证
近日,云和恩墨(北京)信息技术有限公司(以下简称:云和恩墨)的多元数据库智能管理平台 zCloud 与华为云计算技术有限公司(以下简称:华为云)的 GaussDB 数据库完成了兼容性互…...
【大语言模型LangChain】 ModelsIO OutputParsers详解
【大语言模型LangChain】 ModelsIO OutputParsers详解 一、简介二、OutputParsers 的优势三、解析器类型四、实战示例1、String 解析器2、Json 解析器3、Pydantic 解析器4、结构化输出解析器5、OpenAI 函数输出解析器5.1、JsonOutputFunctionsParser5.2、JsonKeyOutputFunction…...
PaddleSpeech本地部署文档
windows安装paddlespeech步骤: 1. 安装vs c编译环境 对于 Windows 系统,需要安装 Visual Studio 来完成 C 编译环境的安装。 Microsoft C Build Tools - Visual Studio 2. 安装conda conda create -y -p paddlespeech python3.8 conda activate pad…...
Android 第三方框架:RxJava:源码分析:责任链模式
文章目录 责任链模式RxJava中的责任链总结 责任链模式 RxJava中的责任链 链式调用的使用过程中形成了两个单向链表 第一个单向链表是Observable链表 它的形成过程: 1.首先调用Observable的静态方法创建第一个Observable对象,作为Observable链表的表…...
网络安全 与 加密算法
计算机中的网络安全 在本篇中介绍了以下几个方面: 机密性 密码学 对称加密算法(DES, 3DES, AES) 公开秘钥算法 RSA大素数的获取 完整性 散列函数(MD5, SHA-1, 并没有提及算法实现) 报文鉴别(MAC) 数字签名 端点鉴别 应用 SSL(TCP网络安全) 运行时安全 防火墙的基本知识 …...
UE4_贴花_贴花基础知识二
五、多表面投射 在本示例中,你将了解贴花如何在多个表面上进行投射。请注意,如果表面朝向与投射方向较为平行,贴花投射时必然会产生一些拉伸。另外,请记住,贴花可以在包括骨骼网格体在内的静态和动态网格体上进行投射。…...
ElasticSearch 搜索、排序、分页功能
一、DSL 查询文档 ElasticSearch 的查询依然是基于 json 风格的 DSL 来实现的。 官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/8.15/query-dsl.html 1.1 DSL 查询分类 常见的查询类型包括: 查询所有:查询出所有数…...
MySQL-9.1.0 实现最基础的主从复制
目录 1 实验介绍 2 实验准备 2.1 创建目录为MySQL挂载使用 2.2 编写 docker-compose.yml 文件 2.3 启动容器 3 主从复制操作 3.1 MASTER 操作指令 3.2 SLAVE1 操作指令 3.3 SLAVE2 操作指令 4 验证是否实现主从 4.1 导入sql脚本查看是否正常主从复制 4.2 检验从库是否看见复制…...
Java中的“泛型“
泛型(Generics)是Java中的一种重要特性,它允许在定义类、接口和方法时使用类型参数(type parameters)。泛型的主要目的是提高代码的类型安全性和重用性。下面我将详细讲解Java中的泛型。 1. 泛型的基本概念 泛型允许我…...
前端(五)css属性
css属性 文章目录 css属性一、字体属性二、文本属性三、背景属性四、盒子模型 一、字体属性 font-weight:文字粗细,在100到900之间,normal(400),bord(700),inherit(继承父类) font-style:文字风格,normal表示正常(默认…...
总结拓展十七:SAP 采购订单行项目“交货“页签解析
《 SAP采购订单行项目“交货”页签字段解析》 在 SAP 系统的采购流程中,采购订单行项目的“交货”页签承载着关键的信息,其中的字段更是对整个交货环节的精准描述和把控的重要元素。理解和正确解析这些字段,对于确保采购流程的顺利进行、优化…...
分布式日志系统设计
一、分布式日志系统定义 分布式日志系统是一种用于收集、存储和分析大规模分布式系统日志的系统。它可以帮助开发人员和系统管理员实时监控和调试系统,提高系统可靠性和可用性,同时也可以用于日志分析和故障排查。 二、简单设计思路 日志收集ÿ…...
DApp开发如何平衡性能与去中心化?
DApp的核心价值在于信任、透明和去中心化,但这些特点往往伴随着性能的瓶颈和高成本。在DApp开发中,如何在保证去中心化的前提下提升性能,成为开发者面临的重要挑战。如何实现性能与去中心化的平衡是一个重要课题。 一、为什么去中心化影响性…...
RK3588开发笔记-Buildroot编译Qt5WebEngine-5.15.10
目录 前言 一、Qt5WebEngine简介 二、Qt5WebEngine编译 总结 前言 Rockchip RK3588是一款强大的多核处理器,广泛应用于边缘计算、人工智能、嵌入式系统等领域。为了在RK3588上运行自定义的Linux系统,并使用Qt5WebEngine进行Web内容渲染,Buildroot是一个非常合适的工具。本…...
2024年12月GESPC++三级真题解析
一、单选题(每题2分,共30分) 题目123456789101112131415答案 B D A A D B C A A D D C D C A 1.下列二进制表示的十进制数值分别是( )[10000011]原( ) [10000011]补ÿ…...
vue-router路由传参的两种方式(params 和 query )
一、vue-router路由传参问题 1、概念: A、vue 路由传参的使用场景一般应用在父路由跳转到子路由时,携带参数跳转。 B、传参方式可划分为 params 传参和 query 传参; C、而 params 传参又可分为在 url 中显示参数和不显示参数两种方式&#x…...
Asp.net 做登录验证码(MVC)
public class ValidateCode{/// <summary>/// 创建随机数/// </summary>/// <param name"num"></param>/// <returns></returns>public string CreateRandom(int num){string str "ABCDEFGHJKMNPQRSTUVWXYZabcdefghjkmnpq…...
在 Chrome中直接调用大型语言模型的API
AI 时代的高速发展,我们都习惯了使用 ChatGPT、Claude、Gemini 和其他 AI 工具来询问各种问题,目前大部分的 AI 应用都是通过服务端 API 来实现的。 如果想要在 Web 上使用 AI 功能往往需要靠服务器来处理一些非常大的模型。这在制作一些生成内容的 AI …...
微信小程序调用腾讯地图-并解读API文档 JavaScript SDK和 WebService API
搜索:腾讯位置服务 找到API文档: 入门中第一步:申请开发者密钥key 前往控制台: 创建应用并获取key: 设置key的时候,还需要小程序的APPID。所以要前往微信公众平台中获取小程序的APPID: 限制要求:…...
Linux应用开发之网络套接字编程(实例篇)
服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …...
Docker 离线安装指南
参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性,不同版本的Docker对内核版本有不同要求。例如,Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本,Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...
利用ngx_stream_return_module构建简易 TCP/UDP 响应网关
一、模块概述 ngx_stream_return_module 提供了一个极简的指令: return <value>;在收到客户端连接后,立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量(如 $time_iso8601、$remote_addr 等)&a…...
从零实现富文本编辑器#5-编辑器选区模型的状态结构表达
先前我们总结了浏览器选区模型的交互策略,并且实现了基本的选区操作,还调研了自绘选区的实现。那么相对的,我们还需要设计编辑器的选区表达,也可以称为模型选区。编辑器中应用变更时的操作范围,就是以模型选区为基准来…...
MODBUS TCP转CANopen 技术赋能高效协同作业
在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...
CocosCreator 之 JavaScript/TypeScript和Java的相互交互
引擎版本: 3.8.1 语言: JavaScript/TypeScript、C、Java 环境:Window 参考:Java原生反射机制 您好,我是鹤九日! 回顾 在上篇文章中:CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数 在软件开发中,单例模式(Singleton Pattern)是一种常见的设计模式,确保一个类仅有一个实例,并提供一个全局访问点。在多线程环境下,实现单例模式时需要注意线程安全问题,以防止多个线程同时创建实例,导致…...
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析 一、第一轮提问(基础概念问题) 1. 请解释Spring框架的核心容器是什么?它在Spring中起到什么作用? Spring框架的核心容器是IoC容器&#…...
Docker 本地安装 mysql 数据库
Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker ;并安装。 基础操作不再赘述。 打开 macOS 终端,开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...
LangChain知识库管理后端接口:数据库操作详解—— 构建本地知识库系统的基础《二》
这段 Python 代码是一个完整的 知识库数据库操作模块,用于对本地知识库系统中的知识库进行增删改查(CRUD)操作。它基于 SQLAlchemy ORM 框架 和一个自定义的装饰器 with_session 实现数据库会话管理。 📘 一、整体功能概述 该模块…...
