如何利用Python进行数据分析(1)

今天我们主要的目标是:给大家介绍在所有的编程语言里,为什么Python能被广泛使用,甚至排名第一,给那些做数据分析相关工作和转行的小伙伴介绍数据分析行业里如何使用Python。

首先介绍一下什么是编程语言。

编程语言是一个计算机的概念,在我们有了计算机以后,想让它帮助我们做事情,就要通过计算机语言和它进行对话、交互,计算机语言能够被计算机所执行,完成我们需要做的相关任务。

计算机语言有很多种,常见的有C、C++、PHP、Java,以及今天我们要讲的Python等等。

首先C语言主要用于对底层的程序进行编程,C++是在C语言之上发展起来的一个面向对象的语言,被广泛的应用于计算机软件的开发;PHP是做网页用的;Java也是一个面向对象的计算机语言,是在C++之后另一个被广泛应用的语言,可以做网页、后端、安卓开发等等。

而Python虽然出现得晚一些,但是目前使用量已经排名第一,那么Python到底是一种什么样的语言呢?

我们看计算机语言的几个类型,从最早的0和1时代就有一些很简单的计算机语言,随着计算机语言的发展,它有几种不同的类型:

  • Procedural Programming Language
  • Functional Programming Language
  • Object-oriented Programming Language
  • Scripting Programming Language

前两种其实非常老旧了,很少会用到,我们现在常用的是第三和第四种,面向对象的编程语言_(比如Java、C++)_。

**什么是面向对象编程语言呢?**比如我们要做一个和汽车有关的程序,就把车设置成一个对象,这个对象会有他的属性和功能,它的重量、颜色、马力、电池等等,人类对于这个事物都是这样理解的,所以让计算机语言也用类似的方式去理解。

**面向对象的编程语言有一个优点就是可以反复使用。**任何人都可以用被设计好的算法去训练自己的数据,来得出自己的模型。还有一些多样性、继承等特点,我们以后再讲。

**Python这个语言本身有面向对象的属性,这是它的优点。**Java、C++这种语言需要编译,然后才可以执行,会相对复杂一些。为什么需要编译呢?我们写代码用的是英文,需要一个编译器来转换语言,转换成计算机能够理解的语言,才能进行执行。

而Python是一种文本型语言,它不需要把程序写好、进行编译、再进行执行,写一行就可以执行一行,这样会更方便使用,所以它既有面向对象的优点,又比传统的语言更方便。

既然Python是一个计算机语言,就要用到一个工具叫IDE,它是一个让我们我们用来编辑使用Python语言的工具,那么别的语言需要IDE吗?

都需要。Java需要Java的IDE、C++需要C++的IDE。Python有上图的几个IDE可以使用,作为数据分析来用,我们一般推荐使用Jupyter_(可以通过网站直接下载安装,它是开源的)_。

Python的执行有很多种方法,除了在IDE里执行,还可以把那些在IDE里写好的程序用Python的命令来执行。

这就是我们使用这个语言时用什么样去编辑、测试、调试以及运行它。后面将会做一个demo看一下在Jupyter Notebook中是如何执行的。

这是Python在TIOBE上的编程语言排名,评估语言是否应用广泛和受欢迎,Python在2020年第3名,2021年第1名。

编程语言包括Java、C、C++、C#,有几大阵营,一个是Lion,它的操作系统是Linux,Web服务器是Apache,语言会用Java、Python,而微软会用另一套,操作系统是Windows,Web服务器是Internet Information System_(IIS)_。Visual Basic是微软的,JavaScript是Apache开源阵营的语言,而Assembly language是对硬件进行编写的汇编语言,SQL是数据库语言,Swift是iPhone的编程语言。

Python为什么排第一呢?

**首先,好学又好用。**像Java、C++等其他语言需要编译,调试的时候需要开调试环境设置断点,但是Python是一行一行执行的,使用起来比较方便,不需要太多的计算机概念。

其次是Python Community,很多开源软件都是Python写的。

**第三,大量开源的开发者,贡献了很多各种各样的Package和Libraries。**Libraries其实就是一个个特别的功能而实现的一套代码。比如有关于数据处理和网站开发的Libraries,利用面向对象开发的形式,直接调用别人已经开发好的可调用的功能进行数据分析和开发网站。

第四,Python的有效性、可靠性比较好,速度也较快。

**最关键的是Big Data、Machine Learning、Cloud Computing这三点。**在Big Data方面,Hadoop Spark都支持Python语言,Spark大数据系统本身是用Scala写的,但是支持Java、Python。很多Machine Learning像sklearn都支持Python。Cloud Computing,像微软的Azure、谷歌的GCP、AWS都是支持Python的。这也是它为什么这么火的原因。

那么使用Python进行数据分析需要学习什么?

比如Numpy进行数据处理、Pandas进行数据处理和基本数据操作、简单的作图等,复杂的图表可以使用Matplotlib,scikit-learning包括分类、回归、聚类等机器学习算法。

下面做一个Demo,在数据分析中有一个和产品、用户相关的话题,Churn Analysis。

比如你是Amazon online shopping的用户,以前每个星期都买东西,现在一个月也不买,这就是用户流失了。你本来有一个chase的信用卡,发现Capital One返点很不错,然后就不再使用chase了,对于chase来讲就是用户流失了。比如你是数据应用学院读书会的会员,到期后不再续订,也是用户流失。

接下来讲Churn Analysis的Demo。

首先Jupyter Notebook就是IDE,每一个代码都可以像文件一样保存、编辑、视图。在每一个cell中可以写代码并添加注释。之前讲了几个重要的Libraries,numpy、pandas、matplotlib、seaborn等,import是python语言使用之前导入程序并起一个别名,比如import pandas as pd。

df=pd.read_csv(“TelcoCustomerChurn.csv”)

pd提供了一个读取数据的功能read_csv,数据是Telco公司用户流失的数据。

**Python的pandas package还提供了非常丰富的文档,DataFrame是存储数据的对象,文档中有参数和例子。**Python好学好用是因为有很多例子,文档也相对比较规范。把数据读取进来之后,使用df.info()可以查看一下数据集的基本信息。

它分为几列,第一列是customerID,数据类型object,这个object是说它不是一个简单的数,它可能是字符串这种的,就会把它做成object。这就和面向对象编程联系到一起了,这是一个对象。执行一行代码就把数据放在这里了。

Head这个功能是看看数据长什么样子数据里面都存储哪些东西,每一列都有它自己的功能。

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

三、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里无偿获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 14
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值