本章数据分析的主要步骤:

1、从网上获取公开数据:html 网页

2、读取html中表格数据

3、数据清洗和整理

4、数据绘图与可视化

5、保存绘图

接下来进行详细的说明

1、从网上获取公开数据:html 网页

在学习编程开始的时候,我都有一个好奇,就是编程语言都有哪些?怎么看哪些编程语言是好的,或者说是比较受欢迎的?

于是逐渐了解到TIOBE,这个是什么呢?以下是百度中的部分解释,可供参考

“TIOBE开发语言排行榜 每月更新一次,依据的指数是基于世界范围内的资深软件工程师和第三方供应商提供,其结果作为当前业内程序开发语言的流行使用程度的有效指标

该指数可以用来检阅开发者的编程技能能否跟上趋势,或是否有必要作出战略改变,以及什么编程语言是应该及时掌握的。观察认为,该指数反应的虽并非当前最流行或应用最广的语言,但对世界范围内开发语言的走势仍具有重要参考意义"。

通过解释,我们大概能知道它是什么了,本章就是以此数据为基础,进行简单的数据分析

网页截图(部分):

2、读取html中表格数据

我们通过pandas可以直接读取html中表格的数据,如下:

我们发现读取的数据是一个列表,所以我们要从列表中抓取我们想要的数据,

首先分别看下,列表里面有哪些数据,

第一个数据:

第二个数据:

第三个数据:

第四个数据

一共有以上4个数据,通过原始的网页也能大概看的出来,因为网页中主要的就是展示了这四种数据

既然有了数据,接下来就是进行数据的整理

3、数据清洗和整理

在数据整理前,我们要明确,我们本次数据分析的目的,因为明确了目的,你才能知道你要整理哪些数据

因为是基本数据分析,所以本次我们的目的是,整理排名前50的编程语言,及其占比,依次来绘制图表

我们发现,以上数据中,数据1和数据2,是我们想要的内容,但是两者的标题不一样,所以就需要合并两个数据表

同时保留我们需要用到的数据

我们选择三个纬度的数据:'Position','Programming Language','Ratings'

我们首先选取”dfs[0]"中的相关数据,代码如下:

我们需要把df1中的列名称,调整为我们需要的内容,主要差异就是把“Oct 2020”更新为“Position”,具体代码如下

因为“dfs[1]”中的数据,已经是我们需要的纬度了,所以不用选取,直接使用

因为这两个数据都是list类型,所以要转换成DataFrame类型,如下:

转换数据类型后,我们合并两个数据,代码如下:

合并后的数据,就是我们需要的,最新10月排名前50的编程语言及其占比

4、数据绘图与可视化

我们先试一下绘图,因为很多现有数据,会因为格式的问题,没法绘制图表

代码如下:我们绘制的时候,指定我们希望用的x轴和y轴

系统会提示错误,重点看最后一行:

这里的意思就是没有数据可以用来作图,我们查看原始数据会发现,“Ratings”这列的数据是百分数,但是查看数据类型可以发现,是字符型数据:

这个时候我们想到用数据类型转换的函数来处理,代码如下:

又提示错误,看最后一行重点:

按照提示说明,数据没法转换成float类型,我在第一次遇到这个问题的时候,很是疑惑

以为是用错来函数,所以尝试来很多转换数据类型的方法,但是都没有成功

最后我突然想到,数据类型没法转换,是不是和“%”有关,如果去除%,是不是可以转换数据,从这个思路出发,成功了

看下数据处理的具体代码:

去除%号后,我们再进行数据类型转换,代码如下:

查看数据类型,我们发现Ratings一列已经是float类型数据,表示转换成功,接下来,我们绘制图标

图标看上去是我们想要的类型了,我们再调整一下,这是线性的曲线,我们换成柱状形状:

图表这样看上去太拥挤,我们通过figsize参数,调整图表的大小,如下:

这个图,看上去更舒服一些了,柱子的颜色,我们调整一下,代码如下:

5、保存绘图

接下来针对我们绘图完成的结果进行保存,代码如下:

在代码的同样的文件夹下面,会出现这样一个文件:

我们点击打开看下:我标注出来了“Python”语言的位置,以下图片就是我们绘图的结果,可以保存好继续使用

或者保留代码,每个月运行依次,就能知道最新编程语言的排名了

以上就是本章重点内容说明,祝学习愉快

本文为作者手打原创,如有引用请取得作者同意

说明:Python数据分析的基础内容,可以参考《利用Python进行数据分析 第二版》这本书,本人也是从这本书开始入门的

python编程语言排行曲线绘制_最新编程语言排名(TIOBE)-数据抓取及绘图(使用Python)...相关推荐

  1. python爬关键词百度指数_详解python3百度指数抓取实例

    百度指数抓取,再用图像识别得到指数 前言: 土福曾说,百度指数很难抓,在淘宝上面是20块1个关键字: 哥那么叼的人怎么会被他吓到,于是乎花了零零碎碎加起来大约2天半搞定,在此鄙视一下土福 安装的库很多 ...

  2. Python爬虫入门【18】: 36氪(36kr)数据抓取 scrapy

    1. 36氪(36kr)数据----写在前面 今天抓取一个新闻媒体,36kr的文章内容,也是为后面的数据分析做相应的准备 36kr 让一部分人先看到未来,而你今天要做的事情确实要抓取它的过去. 网址 ...

  3. node爬取某app数据_使用NodeJs,实现数据抓取

    学习笔记 前言 近期做一个数据抓爬工具,最开始使用的是C#控制台应用,同时正则表达式去过滤数据,看着还行,可每次运行都依附于.net framework很是不爽,于是想整点其他的方法.本人还是比较喜欢 ...

  4. Python爬虫新手教程:微医挂号网医生数据抓取

    1. 写在前面 今天要抓取的一个网站叫做微医网站,地址为 https://www.guahao.com ,我们将通过python3爬虫抓取这个网址,然后数据存储到CSV里面,为后面的一些分析类的教程做 ...

  5. Python爬虫新手教程:微医挂号网医生数据抓取!

    1. 写在前面 今天要抓取的一个网站叫做 微医 网站,地址为 https://www.guahao.com ,我们将通过python3爬虫抓取这个网址,然后数据存储到CSV里面,为后面的一些分析类的教 ...

  6. Python爬虫入门【16】:链家租房数据抓取

    1. 写在前面 作为一个活跃在京津冀地区的开发者,要闲着没事就看看石家庄这个国际化大都市的一些数据,这篇博客爬取了链家网的租房信息,爬取到的数据在后面的博客中可以作为一些数据分析的素材. 我们需要爬取 ...

  7. 最新前程无忧招聘网站数据抓取,并实现数据可视化大屏

    文章目录 技术点 实现的功能 描述 grequests讲解 1.1 grequests简单使用 1.2 grequests和request性能对比 前程无忧爬虫 数据清洗 数据可视化 热门城市的岗位数 ...

  8. python 美团api接口对接_震惊!SpaceX火箭数据开放API接口,可用Python进行数据分析...

    点击上方"数据管道",选择"置顶星标"公众号 干货福利,第一时间送达 梅宁航 发自 凹非寺 量子位 报道 | 公众号 QbitAI 马斯克用火箭把人送上天,Sp ...

  9. Python爬虫入门教程 33-100 《海王》评论数据抓取 scrapy

    1. 海王评论数据爬取前分析 海王上映了,然后口碑炸了,对咱来说,多了一个可爬可分析的电影,美哉~ 摘录一个评论 零点场刚看完,温导的电影一直很不错,无论是速7,电锯惊魂还是招魂都很棒.打斗和音效方面 ...

最新文章

  1. div根据内容改变大小并且左右居中
  2. 一步步创建Qt Widget项目+TextFinder案例(摘自笔者2015年将出的《QT5权威指南》,本文为试读篇)
  3. JavaScript 使用[]读取对象属性
  4. cacls文件服务器备份与恢复,实战安全设置WEB专用服务器技巧
  5. SAP Customer Data Cloud(Gigya)的用户搜索实现 1
  6. nginx 反向proxy多个 tomcat,负载均衡
  7. 收藏 | 用 Keras 实现神经网络来解决梯度消失的问题
  8. 安全性能两手抓,华为云MySQL“非双一特性”助力企业业务稳定高效运行
  9. Eclipse启动时报错Java was started but returned exit code=13
  10. matlab 生成格雷码,格雷码(Grey Code)生成规则
  11. 关于 C# dll文件的反编译获取源码
  12. 数字图像处理基础笔记
  13. WPF 3D 贴图: 为你的二次元老婆们做个3D画廊
  14. 【小萝莉说Crash】第一期:Unrecognized selector sent to instance xxxx
  15. nagios分布式监控中心服务器迁移(使用nsca)
  16. 付出与回报——伍迷“我的2007”随想 (转载 注 这个文章再次告诉我,做人要厚道,只要付出了,总有...
  17. Adobe Photoshop CC 2019 精简版本解压可用炒鸡方便
  18. 美女MVP教你轻松学习Excel VBA-方洁影-专题视频课程
  19. UI/UX设计——APP/移动端设计规范
  20. 企业实战(17)记录一次使用DDNS动态域名解析服务外网通过域名访问内网服务器服务的过程

热门文章

  1. 支持机器学习!LiDAR360点云数据处理分析软件 V2.1发布
  2. Ambari 功能简介
  3. 使用富文本编辑器wangEditor
  4. 「随笔」MySQL入门技能树测评 # CSDN 技能树评测征文
  5. Python 爬虫总结——案例代码
  6. 加密越来越简单——用JavaScript实现数据加密和解密
  7. SRC小技巧:批量获取补天公益SRC网址
  8. Web开发之使用【easyui】快速搭建管理员主界面
  9. 吴恩达机器学习(三)—— Logisitic回归
  10. ie浏览器使用pdf时需要先安装软件Adobe Reader 9