和鲸社区数据分析每周挑战【第九十三期:特斯拉充电桩分布分析】

news2024/9/25 21:25:45

和鲸社区数据分析每周挑战【第九十三期:特斯拉充电桩分布分析】

文章目录

  • 和鲸社区数据分析每周挑战【第九十三期:特斯拉充电桩分布分析】
    • 一、前言
    • 二、数据读取和初步探索
    • 三、数据探索及可视化
      • 1、获取拥有最多充电站的 10 个国家
      • 2、一年中各月新开业数量的变化
      • 3、中国各省的充电桩数量分布
      • 4、全球特斯拉超级充电站分布图

一、前言

本周的挑战内容为:特斯拉充电桩分布分析

大家可以去关于特斯拉超级充电站数据集(全球)的探索在线或者下载到本地进行运行这个项目。

在这里插入图片描述

数据集来源本次活动提供:

在这里插入图片描述

在这里插入图片描述

二、数据读取和初步探索

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import plotly.express as px # 交互式可视化
import folium   # 地图可视化

data = pd.read_csv("Supercharge Locations.csv")
data.head()

在这里插入图片描述

data.describe() # 查看数据的基本统计信息

在这里插入图片描述

data.isnull().sum() # 查看数据是否有缺失值
Supercharger         0
Street Address       0
City                 0
State              123
Zip               1928
Country              0
Stalls               0
kW                   6
GPS                  0
Elev(m)              2
Open Date          781
dtype: int64

三、数据探索及可视化

1、获取拥有最多充电站的 10 个国家

#隐藏警告
import warnings
warnings.filterwarnings("ignore")               #忽略警告信息
plt.rcParams['font.sans-serif']  = ['SimHei'] # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False      # 用来正常显示负号
plt.rcParams['figure.dpi']  = 100        #分辨率

top_10_countries = data['Country'].value_counts().head(10)

# 创建条形图
plt.figure(figsize=(10, 6))
sns.barplot(x=top_10_countries.index, y=top_10_countries.values)
plt.xlabel('国家')
plt.ylabel('充电站的数量')
plt.title('拥有最多充电站的 10 个国家')
plt.xticks(rotation=45)
plt.show()

在这里插入图片描述

我们不难发现美国共有超过1100座特斯拉充电站,是世界上特斯拉充电站最多的国家。此外,荷兰、德国、中国等国家的充电站数量也比较多。

2、一年中各月新开业数量的变化

# 将开放日期列转换为日期时间格式
data['Open Date'] = pd.to_datetime(data['Open Date'])

# 提取年份和月份作为新的列
data['Year'] = data['Open Date'].dt.year
data['Month'] = data['Open Date'].dt.month

# 计算每个月的新开业数量
monthly_openings = data.groupby(['Year', 'Month']).size().reset_index(name='Count')

# 创建折线图
plt.figure(figsize=(10, 6))
sns.lineplot(data=monthly_openings, x='Month', y='Count', hue='Year', marker='o')
plt.xlabel('月份')
plt.ylabel('新开业数量')
plt.title('一年中各月新开业数量的变化')
plt.legend(title='月份', loc='upper left')
plt.xticks(range(1, 13))
plt.show()

在这里插入图片描述

根据图像我们可以发现新开业数量呈现出了明显的季节性变化,每年四月、六月和十月都有比较多的新开业数量,而一月、七月和十一月则有比较少的新开业数量。

3、中国各省的充电桩数量分布

china_data = data[data['Country'] == 'China']

# 按省份统计充电桩数量
province_counts = china_data['State'].value_counts()

# 创建条形图
plt.figure(figsize=(10, 6))
province_counts.plot(kind='bar')
plt.xlabel('省份')
plt.ylabel('充电桩数量')
plt.title('中国各省的充电桩数量分布')

# 显示图表
plt.show()

在这里插入图片描述

根据图像我们可以发现在中国,广东、上海和北京的充电桩数量排名前三,其它各省的充电桩数量都比较分散。

4、全球特斯拉超级充电站分布图

# 从GPS列中提取经度和纬度
data[['Latitude', 'Longitude']] = data['GPS'].str.extract(r'([-\d\.]+), ([-\d\.]+)').astype(float)

# 创建地理散点图
fig = px.scatter_geo(data,
                     lat="Latitude",
                     lon="Longitude",
                     hover_name="Supercharger",
                     text="Stalls",
                     color="Country",
                     projection="natural earth")

# 更新布局和标题
fig.update_layout(title="全球特斯拉超级充电站分布图")

# 显示图表
fig.show()

在这里插入图片描述

根据图像我们可以发现全球特斯拉充电站分布比较集中,美国、欧洲、中国和澳大利亚都有较为密集的充电站分布,其它地区的充电站数量相对较少。

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

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

相关文章

I.MX RT1170之FlexSPI详解:FlexSPI基础知识和特性

最近我也在做RT1170的相关项目,由于项目需要,研究了Flash下载算法、NOR Flash空间的擦除/烧写(OTFAD XIP更新固件时要更新OTFAD Key Blob字段)、HyperRAM初始化等功能,这些都是开发过程中可能会遇到的一些问题,而这些都与FlexSPI接…

第2章 信息技术发展

文章目录 2.1.2计算机网络1.网络标准协议2.软件定义网络3.第五代移动通信技术 2.1.3存储和数据库1.存储技术2.数据结构模型3.常用数据库类型4.数据仓库 2.1.4信息安全2.1.5信息技术的发展2.2.1物联网2.2.2云计算2.2.3大数据2.2.4区块链2.2.5人工智能2.2.6虚拟现实 信息技术是在…

前端vue入门(纯代码)09

【09.vue中组件的自定义事件】 自定义组件链接 在vue中用的click【点击】、keyup【按键】……等事件,这些属于内置事件,也就是js自带的事件。 问题一:什么是组件自定义事件呢? 【内置事件】:是给html元素用的,比如s…

UG\NX二次开发 加密锁(加密狗)

文章作者:里海 来源网站:https://blog.csdn.net/WangPaiFeiXingYuan 加密锁简介 加密狗是一种用于保护软件版权的技术手段,它可以限制未经授权的用户在未经许可的情况下使用某些软件。软件加密锁可以保护软件开发商的知识产权,防止盗版和非法复制等行为,同时也可以…

React 对比class与Effect Hook优化响应式数据更新监听,感受useEffect真正的强大

还是之前写过的一个组件 import React from "react"export default class index extends React.Component{constructor(props){super(props);this.state {name: "小猫猫"}}componentDidMount ()>{document.title this.state.name;}componentDidUpda…

msvcr110.dll,丢失修复,msvcr110.dll,丢失修复详细解决办法

我们在运行软件程序或者游戏的时候,如果程序提示“无法启动此程序,因为计算机中丢失msvcr110.dll。尝试重新安装该程序以解决此问题”,如果说明您电脑系统中缺少或者未注册msvcr110.dll这个运行库文件,那么我们要如何解决这个问题…

Node内存管理+垃圾回收机制

最近看到《深入浅出node》这本书,里面正好有内存控制, 加上最近看到一篇文章,也是讲了内存管理和垃圾回收机制。 由于自己曾经做过一个ssl接口,导致node服务经常重启,我潜意识就怀疑是内存管理出现了问题,…

H264 NALU分析

标题 1.H264介绍2.H264编解码解析2.1. H264编码原理2.2 H264的I帧,P帧,B帧2.3 H264编码结构解析2.4 NALU2.4.1 NALU结构2.4.2 解析NALU2.4.3 annexb模式 1.H264介绍 H.264从1999年开始,到2003年形成草案,最后在2007年定稿有待核实。在ITU的标准⾥称为H.…

Ansible Playbook

Ansible 的脚本 --- playbook 剧本 playbooks 本身由以下各部分组成 (1)Tasks:任务,即通过 task 调用 ansible 的模板将多个操作组织在一个 playbook 中运行 (2)Variables:变量 (3&…

Postman接口测试之:添加Cookie伪造请求

1,获取cookie值 登录某网站,通过开发者工具(或者fiddler抓包工具),获取登录成功后的请求头中的cookie值。 大家肯定奇怪,明明访问首页的时候就已经生成了cookie值,为什么还登录呢?…

Linux中磁盘管理之格式化、分区、挂载-详解

今天给大家介绍一下Linux中磁盘管理中格式化、分区、挂载等操作步骤,希望这篇文章对大家有所帮助。 一、磁盘知识 1.磁盘含义 磁盘(Disk)是一种用于存储和读取数据的物理设备,它由一个或多个旋转的磁性盘片组成。这些盘片通常由…

递归算法学习

递归算法介绍 递归指的是函数或算法在执行过程中调用自身。在递归的过程中,程序会不断地将自身的执行过程压入调用栈中,直到满足某个条件结束递归调用并开始返回。递归算法常用于解决一些具有递归结构的问题,比如树、图、排序等。递归算法可以…

5.controller部署nova服务

nova 服务是 OpenStack service 计算服务,负责维护和管理云环境的计算资源; 例如: 接收客户端请求需要的计算资源; 确定实例在哪个物理机上创建; 通过虚机化的方式将实例启动运行等工作。 controller节点 在安装和配…

JAVA为什么要面向对象

JAVA是一个面向对象的语言 ok,我们开始,用了那么久的java,看了那么多代码,你是否懂得了面向对象,今天我们的第一个问题就是,为什么java要面向对象,要解释为啥要面向对象,我们首先要…

Python selenium自动化测试模型图解

1、线性测试 优势:每一个脚本都是完整独立的,每一个脚本对应一个测试用例 缺点:开发成本高,会有重复操作重复脚本;维护成本也高,修改重复操作的脚本时,要逐一进行修改。 2、模块化驱动测试 …

2023年计算机专业毕业实习报告最新

2023年计算机专业毕业实习报告最新篇1 一、实习基本情况 按照学校对毕业生的要求,为毕业后的工作和谋职打下良好的基础。我于X年X月来到山西柳林汇丰兴业同德焦煤有限公司进行为期X个月的实习。毕业实习让我们想起那句老话:“让学生赢在起跑线上。”在学…

验证性实验 - 线性回归

练习1:线性回归 介绍 在本练习中,您将实现线性回归并了解其在数据上的工作原理。 在开始练习前,需要下载如下的文件进行数据上传: ex1data1.txt -单变量的线性回归数据集ex1data2.txt -多变量的线性回归数据集 在整个练习中&a…

马斯克撕下美国的遮羞布,美企纷纷背刺,外媒:可怕的还在后面

马斯克访华造成的影响还在持续,随着更多美国企业家访华以及表明态度,可以说他们正撕下美国的遮羞布,今天的美国其实早已背离了当初他们所宣扬的价值,凸显出外强中干的本质。 二.美国企业家纷纷访华撕下美国遮羞布 美国一直都标榜贸…

某购房通小程序解密分析【2023.6.17】

声明 本文以教学为基准、本文提供的可操作性不得用于任何商业用途和违法违规场景。 本人对任何原因在使用本人中提供的代码和策略时可能对用户自己或他人造成的任何形式的损失和伤害不承担责任。 如有侵权,请联系我进行删除。 主要对小程序返回的加密结果进行解密的分析过程只…

如何在编程中中实现负载均衡和容错处理

什么是容错 容错是指系统(计算机、网络、云集群等)在其一个或多个组件发生故障时继续运行而不会中断的能力。 创建容错系统的目的是防止由单点故障引起的中断,确保任务关键型应用程序或系统的高可用性和业务连续性。 容错系统使用备份组件…