数据分析案例-2024 年全电动汽车数据集可视化分析

 

🤵‍♂️ 个人主页:@艾派森的个人主页

✍🏻作者简介:Python学习者
🐋 希望大家多多支持,我们一起进步!😄
如果文章对你有帮助的话,
欢迎评论 💬点赞👍🏻 收藏 📂加关注+


目录

1.项目背景

2.数据集介绍

3.技术工具

4.导入数据

5.数据可视化

源代码


1.项目背景

随着全球对气候变化和环境污染问题的日益关注,电动汽车作为一种清洁能源交通工具,受到了越来越多的关注和青睐。因此,对全电动汽车数据集进行可视化分析的实验具有重要的研究背景和意义。

  1. 环境保护意识提升:随着全球气候变化问题日益严峻,各国政府和国际社会纷纷加强环保政策,提倡低碳出行。电动汽车作为零排放交通工具,具有减少尾气排放、改善空气质量的显著优势,因此成为了政府和企业推动环保交通发展的重要手段。

  2. 技术发展和市场竞争:随着电池技术的不断进步和成本的逐渐下降,全电动汽车的性能不断提升,续航里程逐渐增加,充电设施也得到了普及。在这种背景下,全球电动汽车市场呈现出蓬勃发展的态势,各大汽车制造商和科技公司纷纷投入到电动汽车的研发和生产中,形成了激烈的市场竞争。

  3. 消费者需求和行为变化:随着人们生活水平的提高和对环保意识的增强,越来越多的消费者开始关注并选择购买电动汽车。他们更倾向于选择环保、智能、高性能的交通工具,因此电动汽车在市场上的需求持续增长。

  4. 政策支持和激励措施:各国政府纷纷出台了一系列政策支持和激励措施,如补贴、减税、购车优惠等,以促进电动汽车的推广和普及。这些政策举措对于电动汽车市场的快速发展起到了重要的推动作用。

在这样的背景下,对全电动汽车数据集进行可视化分析,可以帮助我们更深入地了解电动汽车市场的发展趋势、消费者偏好、技术创新等方面的情况,为政府制定政策、企业制定营销策略以及消费者做出购车决策提供科学依据和参考。

2.数据集介绍

本数据集来源于Kaggle,原始数据集共有177866条数据,17个变量。该数据集显示了目前通过华盛顿州许可部 (DOL) 注册的电池电动汽车 (BEV) 和插电式混合动力电动汽车 (PHEV)。

电池电动汽车 (BEV) 是一种全电动汽车,使用一个或多个电池来存储电能,为电机提供动力,并通过将车辆插入电源进行充电。插电式混合动力汽车 (PHEV) 是一种使用一个或多个电池为电动机提供动力的车辆;使用另一种燃料,例如汽油或柴油,为内燃机或其他推进源提供动力;并通过将车辆插入电源来充电。

清洁替代燃料汽车 (CAFV) 资格基于 RCW 82.08.809 和 RCW 82.12.809 中概述的燃料要求和纯电动续航里程要求,才有资格获得替代燃料汽车零售和华盛顿州使用税豁免。这些车辆的销售或租赁必须在 2019 年 8 月 1 日或之后进行,并满足购买价格要求,才有资格获得替代燃料汽车零售和华盛顿州使用税豁免。

3.技术工具

Python版本:3.9

代码编辑器:jupyter notebook

4.导入数据

首先导入数据分析用到的第三方库并加载数据集

查看数据大小

查看数据基本信息

查看数值型变量的描述性统计

查看非数值型变量的描述性统计

统计数据缺失值情况

可以发现,County和Postal Code有5个缺失值,倒数第五列变量有389个缺失值。

删除缺失值

统计重复值情况

数据集并不存在重复数据

5.数据可视化

可视化1:按电动汽车数量排名的十大电动汽车制造商

可视化显示,特斯拉是电动汽车市场的领头羊,其次是日产,雪佛兰表明特斯拉是最受欢迎的品牌。

可视化2:随着时间的推移电动汽车的采用

“随着时间的推移,电动汽车的采用”可视化显示了电动汽车注册量的显著增长,从2010年代初开始增长,并在2020年代进一步加速增长。近年来,电动汽车的采用呈指数级增长,这意味着它正变得越来越受欢迎。

可视化3:电动汽车数量排名前10的县

可视化显示,金县是电动汽车采用的领先地区,其次是斯诺霍米什县和皮尔斯县。

可视化4:纯电动汽车和插电式混合动力汽车多年流行度的比较

多年来,纯电动汽车(bev)和插电式混合动力汽车(phev)之间的比较凸显了一个明显的趋势,即纯电动汽车越来越受欢迎,尤其是在2023年。

可视化5:多年来汽车电动续航里程的改善

随回归线的散点图显示了历年电动里程的显著改善,电动里程有明显的上升趋势。

可视化6:电动汽车价格历年分布

可视化显示了近年来电动汽车中位数价格的增长。2008年到2011年的价格与现在相比非常高。

可视化7:Top10厂商的电动汽车价格分布

箱线图显示了前10名电动汽车制造商的基本建议零售价的显着变化,保时捷非常受欢迎,价格范围在80000到180000之间。菲斯克的价格第二高。

可视化8:按电动汽车数量排名的十大电力公司

柱状图按车辆数量显示了电力公用事业。普吉特海湾能源公司拥有最多的电动汽车。

可视化图9:按立法区划分的电动汽车

可视化显示了各立法区在电动汽车(EV)采用方面的差异,41区、45区和48区遥遥领先。

源代码

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')df=pd.read_csv('Electric_Vehicle_Population_Data.csv')
df.head()
df.shape
df.info()
df.describe()
df.describe(include='O')
df.isnull().sum()
df.duplicated().sum()
df.dropna(inplace=True)
可视化1:按电动汽车数量排名的十大电动汽车制造商。
# 按电动汽车数量排名的十大电动汽车制造商
ev_counts_by_make = df['Make'].value_counts().nlargest(10)
sns.set_style("whitegrid")
plt.figure(figsize=(10, 6))
sns.barplot(x=ev_counts_by_make.values, y=ev_counts_by_make.index, palette="viridis")
plt.title('Top 10 Electric Vehicle Makes by Number of Electric Vehicles', fontsize=15)
plt.xlabel('Number of Vehicles', fontsize=12)
plt.ylabel('Make', fontsize=12)
plt.show()
可视化显示,特斯拉是电动汽车市场的领头羊,其次是日产,雪佛兰表明特斯拉是最受欢迎的品牌。
# 可视化2:随着时间的推移电动汽车的采用
sns.set_style("whitegrid")
ev_adoption_over_time = df['Model Year'].value_counts().sort_index()
plt.figure(figsize=(14, 7))
sns.lineplot(x=ev_adoption_over_time.index, y=ev_adoption_over_time.values, marker='o', color='royalblue')
plt.title('EV Adoption Over Time', fontsize=20)
plt.xlabel('Model Year', fontsize=14)
plt.ylabel('Number of EV Registrations', fontsize=14)
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()
“随着时间的推移,电动汽车的采用”可视化显示了电动汽车注册量的显著增长,从2010年代初开始增长,并在2020年代进一步加速增长。近年来,电动汽车的采用呈指数级增长,这意味着它正变得越来越受欢迎。
# 可视化3:电动汽车数量排名前10的县
ev_count_distribution = df.groupby('County')['VIN (1-10)'].count().reset_index().sort_values(by='VIN (1-10)', ascending=False)
top_ev_counties = ev_count_distribution.head(10)
plt.figure(figsize=(10, 8))
sns.barplot(x='VIN (1-10)', y='County', data=top_ev_counties, palette='viridis')
plt.title('Top 10 Counties by Electric Vehicle Counts')
plt.xlabel('Number of Electric Vehicles')
plt.ylabel('County')
plt.tight_layout()
plt.show()
可视化显示,金县是电动汽车采用的领先地区,其次是斯诺霍米什县和皮尔斯县。
# 可视化4:纯电动汽车和插电式混合动力汽车多年流行度的比较
# 过滤数据集,只包括bev和PHEV
ev_types_df = df[df['Electric Vehicle Type'].isin(['Battery Electric Vehicle (BEV)', 'Plug-in Hybrid Electric Vehicle (PHEV)'])]
# 将数据按型号、年份和数量分组
yearly_ev_counts = ev_types_df.groupby(['Model Year', 'Electric Vehicle Type']).size().unstack(fill_value=0).reset_index()sns.set_style("whitegrid")
plt.figure(figsize=(14, 8))
yearly_ev_counts.plot(kind='bar', stacked=True, x='Model Year', figsize=(14, 8), width=0.8)
plt.title('Comparison of BEVs and PHEVs Popularity Over Years', fontsize=16)
plt.xlabel('Model Year', fontsize=14)
plt.ylabel('Number of Vehicles', fontsize=14)
plt.xticks(rotation=45)
plt.legend(title='Electric Vehicle Type', fontsize=12)
plt.tight_layout()
plt.show()
多年来,纯电动汽车(bev)和插电式混合动力汽车(phev)之间的比较凸显了一个明显的趋势,即纯电动汽车越来越受欢迎,尤其是在2023年。
# 可视化5:多年来汽车电动续航里程的改善
plt.figure(figsize=(10, 6))
sns.scatterplot(data=df, x='Model Year', y='Electric Range', alpha=0.6)
plt.title('Improvement in Electric Range of Vehicles Over the Years')
plt.xlabel('Model Year')
plt.ylabel('Electric Range (miles)')
sns.regplot(data=df, x='Model Year', y='Electric Range', scatter=False, color='red')
plt.show()
随回归线的散点图显示了历年电动里程的显著改善,电动里程有明显的上升趋势。
# 可视化6:电动汽车价格历年分布
#过滤掉基本MSRP为零或高的行
filtered_df = df[(df['Base MSRP'] > 0) & (df['Base MSRP'] < 200000)]
sns.set_style("whitegrid")
plt.figure(figsize=(14, 8))
sns.boxplot(data=filtered_df, x='Model Year', y='Base MSRP', palette="viridis")
plt.title('Distribution of Electric Vehicle Prices Over the Years', fontsize=16)
plt.xlabel('Model Year', fontsize=14)
plt.ylabel('Base MSRP ($)', fontsize=14)
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()
可视化显示了近年来电动汽车中位数价格的增长。2008年到2011年的价格与现在相比非常高。
# 可视化7:Top10厂商的电动汽车价格分布
top_makes = filtered_df['Make'].value_counts().nlargest(10).index
filtered_top_makes_df = filtered_df[filtered_df['Make'].isin(top_makes)]
plt.figure(figsize=(16, 10))
sns.boxplot(data=filtered_top_makes_df, x='Make', y='Base MSRP', palette="coolwarm")
plt.title('Distribution of Electric Vehicle Prices by Make (Top 10 Makes)', fontsize=16)
plt.xlabel('Make', fontsize=14)
plt.ylabel('Base MSRP ($)', fontsize=14)
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()
箱线图显示了前10名电动汽车制造商的基本建议零售价的显着变化,保时捷非常受欢迎,价格范围在80000到180000之间。菲斯克的价格第二高。
# 可视化8:按电动汽车数量排名的十大电力公司
utility_counts = df.groupby('Electric Utility')['DOL Vehicle ID'].count().reset_index()
utility_counts_sorted = utility_counts.sort_values(by='DOL Vehicle ID', ascending=False).head(10)
plt.figure(figsize=(10, 6))
sns.barplot(data=utility_counts_sorted, x='DOL Vehicle ID', y='Electric Utility', palette='viridis', order=utility_counts_sorted['Electric Utility'])
plt.title('Top 10 Electric Utilities by Number of Electric Vehicles')
plt.xlabel('Number of Electric Vehicles')
plt.ylabel('Electric Utility')
plt.tight_layout()
plt.show()
柱状图按车辆数量显示了电力公用事业。普吉特海湾能源公司拥有最多的电动汽车。
# 可视化图9:按立法区划分的电动汽车
# 按地区分组,按车牌号统计
district_counts = df.groupby('Legislative District')['DOL Vehicle ID'].count().reset_index()
district_counts_sorted = district_counts.sort_values(by='DOL Vehicle ID', ascending=False)
plt.figure(figsize=(14, 8))
sns.barplot(x='Legislative District', y='DOL Vehicle ID', data=district_counts_sorted,palette='coolwarm')
plt.title('Electric Vehicles by Legislative District')
plt.xlabel('Legislative District')
plt.ylabel('Number of Electric Vehicles')
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()
可视化显示了各立法区在电动汽车(EV)采用方面的差异,41区、45区和48区遥遥领先。

资料获取,更多粉丝福利,关注下方公众号获取

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/43692.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Navicat BI 教程 | 图表设计和仪表板

商业智能&#xff08;Business Intelligence&#xff0c;BI&#xff09;是将数据转化为可操作的洞察力的实践&#xff0c;使组织能够简化生产力和实现更好的整体绩效。本博客最近介绍了新的 Navicat BI&#xff0c;这是一个帮助 BI 专业人员通过创建数据可视化&#xff08;如图…

侯捷C++面向对象高级编程(上)-11-虚函数与多态

1.虚函数 2.virtual 3.继承&#xff0b;复合关系下的构造和析构 4.委托&#xff0b;继承

Shell学习——Shell运算符

文章目录 运算符算术运算符关系运算符布尔运算符逻辑运算符字符串运算符 运算符 算术运算符 #!/bin/bash a10 b20valexpr $a $b echo "a b : $val"valexpr $a - $b echo "a - b : $val"valexpr $a \* $b echo "a * b : $val"valexpr $b / $a…

C语言 | Leetcode C语言题解之第221题最大正方形

题目&#xff1a; 题解&#xff1a; int maximalSquare(char** matrix, int matrixSize, int* matrixColSize){int dp[301][301]{0};int wid0;if(matrixSize0&&matrixColSize[0]0){return 0;}for(int i0;i<matrixSize;i){for(int j0;j<matrixColSize[0];j){if(m…

Docker进入MongoDB

先是命令行开启docker镜像&#xff0c;然后进入docker镜像&#xff0c;这是两步 进入之后&#xff0c;开头会变成root&#xff0c;我的理解是进入了另一个linux系统了&#xff0c;直接执行相应的软件 这里直接use databse就是进入了&#xff0c;据说MongoDB是慢启动&#xff0c…

MMGPL: 多模态医学数据分析与图提示学习| 文献速递-基于深度学习的多模态数据分析与生存分析

Title 题目 MMGPL: Multimodal Medical Data Analysis with Graph Prompt Learning MMGPL: 多模态医学数据分析与图提示学习 01 文献速递介绍 神经学障碍&#xff0c;包括自闭症谱系障碍&#xff08;ASD&#xff09;&#xff08;Lord等&#xff0c;2018年&#xff09;和阿…

开发个人Go-ChatGPT–6 OpenUI

开发个人Go-ChatGPT–6 OpenUI Open-webui Open WebUI 是一种可扩展、功能丰富且用户友好的自托管 WebUI&#xff0c;旨在完全离线运行。它支持各种 LLM 运行器&#xff0c;包括 Ollama 和 OpenAI 兼容的 API。 功能 由于总所周知的原由&#xff0c;OpenAI 的接口需要密钥才…

C#字符串操作:判断一个字符串是否存在于另一个字符串按特定字符分割后的子字符串中的几种方法

要判断一个字符串是否存在于另一个字符串按特定字符分割后的子字符串中&#xff0c;可以使用以下几种方法&#xff1a; 方法一&#xff1a;使用Split和Array.Exists 你可以使用 Split 方法将字符串分割成子字符串数组&#xff0c;然后使用 Exists方法检查目标字符串是否在数组…

Elasticsearch详细介绍

B站对应视频&#xff1a; Elasticsearch01-01.为什么学习elasticsearch_哔哩哔哩_bilibili 大多数日常项目&#xff0c;搜索肯定是访问频率最高的页面之一。目前搜索功能是基于数据库的模糊搜索来实现的&#xff0c;存在很多问题。 首先&#xff0c;查询效率较低。 由于数据…

Java面试题:三个线程交替打印ABC如何实现?

目录 方法一&#xff1a;使用synchronized和wait/notify方法二&#xff1a;使用CompletableFuture实现 方法一&#xff1a;使用synchronized和wait/notify package com.demo;import java.util.concurrent.CompletableFuture;public class PrintABC {// 当前状态private static…

数据结构 Java DS——链表部分经典题目 (1)

前言 笔者计划在暑假啃完JavaDS,Mysql的内容当然也会继续更 这次给读者们分享的是链表的几个比较典型的题目,关于如何手搓一个链表,笔者还在筹划中, 毕竟链表的种类也有那么多,但是在下面的题目中,只有单向链表 题目一 : 反转链表 206. 反转链表 - 力扣&#xff08;LeetCode…

什么是 VueQuill(前端的富文本编辑器)?

什么是 VueQuill&#xff1f; 1. 简介 VueQuill 是 Vue.js 的一个富文本编辑器插件&#xff0c;它基于 Quill 编辑器构建&#xff0c;提供了简洁且功能强大的富文本编辑功能。Quill 是一个现代化的富文本编辑器&#xff0c;提供丰富的文本编辑能力&#xff0c;支持多种格式和…

paddlenlp cpu windows 下测试gpt

paddlenlp 安装python3.11版本 conda create -n python311 python3.11 激活python conda activate python311 安装paddlepaddle conda install paddlepaddle3.0.0b0 -c paddle pip install paddlenlp3.0.0b0 -U -i https://pypi.tuna.tsinghua.edu.cn/simple windows下…

RockYou2024 发布史上最大密码凭证

参与 CTF 的每个人都至少使用过一次臭名昭著的rockyou.txt单词表&#xff0c;主要是为了执行密码破解活动。 该文件是一份包含1400 万个唯一密码的列表。 源自 2009 年的 RockYou 黑客攻击&#xff0c;创造了计算机安全历史。 多年来&#xff0c;“rockyou 系列”不断发展。…

爬虫怎么实现抓取的

1.4爬虫工程师常用的库通过图1-3我们了解到&#xff0c;爬虫程序的完整链条包括整理需求、分析目标、发出网络请求、文本解析、数据入库和数据出库。其中与代码紧密相关的有&#xff1a;发出网络请求、文本解析、数据入库和数据出库&#xff0c;接下来我们将学习不同阶段中爬虫…

C++OCR API减轻人们文字录入的负担

曾几何时&#xff0c;许多大企业会设立文字录入专员的岗位。相信有不少人第一份实习工作就是录入资料&#xff0c;文档、发票、证件等形形色色的文件堆积如山&#xff0c;日积月累的敲击键盘&#xff0c;一张一张的录入电脑系统。这种工作是枯燥的&#xff0c;可以练就文字录入…

实验01 黑盒测试方法(等价类划分、边界值分析)

一 实验目的&#xff1a; 1、理解黑盒测试的定义&#xff1b; 2、掌握等价类划分法&#xff1b; 3、掌握边界值分析法。 二 实验环境 1、Windows操作系统计算机&#xff1b; 三 实验准备 1、理解黑盒测试的定义&#xff1b; 2、等价类划分法原则&#xff1b; 3、边界值分…

Java反射与Fastjson的危险反序列化

什么是Java反射&#xff1f; 在前文中&#xff0c;我们有一行代码 Computer macBookPro JSON.parseObject(preReceive,Computer.class); 这行代码是什么意思呢&#xff1f;看起来好像就是我们声明了一个名为 macBookPro 的 Computer 类&#xff0c;它由 fastjson 的 parseObje…

Java入门-Day7-面对对象基础-构造器

&#xff08;1&#xff09;特点 创建对象时&#xff0c;对象会去调用构造器 &#xff08;2&#xff09;应用场景 创建对象时&#xff0c;同时完成对对象的成员变量&#xff08;属性&#xff09;&#xff0c;的初始化 &#xff08;3&#xff09;注意事项 //Sutdent构造器 注…

Java 幼儿园(20240709)多来源列表映射多实现类

1、功能场景 对接多个外部厂商&#xff0c;比如多个银行的账单获取&#xff0c;需要根据银行信息执行对应的实现类。 2、功能代码 &#xff08;1&#xff09;YAML配置来源列表 bank-source: bank_001, bank_002, bank_003 &#xff08;2&#xff09;外部来源枚举 public …