数据结构论坛

首页 » 分类 » 问答 » Python做数据分析简洁易读强大
TUhjnbcbe - 2021/7/27 17:43:00

使用过Python的用户都会被其简洁、易读、强大的库所折服,其pythonic语言特性,对人极其友好,可以说,一个完全不懂编程语言的人,看懂python语言也不是难事。

在数据分析和交互、探索性计算以及数据可视化等方面,相对于R、MATLAB、SAS、Stata等工具,Python都有其优势。近年来,由于Python库的不断发展(如pandas),使其在数据挖掘领域崭露头角。结合其在通用编程方面的强大实力,我们完全可以只使用Python这一种语言去构建以数据为中心的应用程序。

由于python是一种解释性语言,大部分编译型语言都要比python代码运行速度快,有些同学就因此鄙视python。但是python是一门高级语言,其生产效率更高,时间通常比CPU的时间值钱,因此为了权衡利弊,考虑用python是值得的。

Python强大的计算能力依赖于其丰富而强大的库:

Numpy

NumericalPython的简称,是Python科学计算的基础包。其功能:

1.快速高效的多维数组对象ndarray。

2.用于对数组执行元素级计算以及直接对数组执行数学运算的函数。

3.线性代数运算、傅里叶变换,以及随机数生成。

4.用于将C、C++、Fortran代码集成到Python的工具。

除了为Python提供快速的数组处理能力,NumPy在数据分析方面还有另外一个主要作用,即作为在算法之间传递数据的容器。对于数值型数据,NumPy数组在存储和处理数据时要比内置的Python数据结构高效得多。此外,由低级语言(比如C和Fortran)编写的库可以直接操作NumPy数组中的数据,无需进行任何数据复制工作。

SciPy

是一组专门解决科学计算中各种标准问题域的包的集合,主要包括下面这些包:

1.scipy.integrate:数值积分例程和微分方程求解器。

2.scipy.linalg:扩展了由numpy.linalg提供的线性代数例程和矩阵分解功能。

3.scipy.optimize:函数优化器(最小化器)以及根查找算法。

4.scipy.signal:信号处理工具。

5.scipy.sparse:稀疏矩阵和稀疏线性系统求解器。

6.scipy.special:SPECFUN(这是一个实现了许多常用数学函数(如伽玛函数)的Fortran库)的包装器。

7.scipy.stats:标准连续和离散概率分布(如密度函数、采样器、连续分布函数等)、各种统计检验方法,以及更好的描述统计法。

8.scipy.weave:利用内联C++代码加速数组计算的工具。

注:NumPy跟SciPy的有机结合完全可以替代MATLAB的计算功能(包括其插件工具箱)。

SymPy

是python的数学符号计算库,用它可以进行数学表达式的符号推导和演算。

pandas

提供了使我们能够快速便捷地处理结构化数据的大量数据结构和函数。你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一。

pandas兼具NumPy高性能的数组计算功能以及电子表格和关系型数据库(如SQL)灵活的数据处理功能。它提供了复杂精细的索引功能,以便更为便捷地完成重塑、切片和切块、聚合以及选取数据子集等操作。

对于使用R语言进行统计计算的用户,肯定不会对DataFrame这个名字感到陌生,因为它源自于R的data.frame对象。但是这两个对象并不相同。R的data.frame对象所提供的功能只是DataFrame对象所提供的功能的一个子集。也就是说pandas的DataFrame功能比R的data.frame功能更强大。

matplotlib

是最流行的用于绘制数据图表的Python库。它最初由JohnD.Hunter(JDH)创建,目前由一个庞大的开发人员团队维护。它非常适合创建出版物上用的图表。它跟IPython(马上就会讲到)结合得很好,因而提供了一种非常好用的交互式数据绘图环境。绘制的图表也是交互式的,你可以利用绘图窗口中的工具栏放大图表中的某个区域或对整个图表进行平移浏览。

TVTK

是python数据三维可视化库,是一套功能十分强大的三维数据可视化库,它提供了Python风格的API,并支持Trait属性(由于Python是动态编程语言,其变量没有类型,这种灵活性有助于快速开发,但是也有缺点。而Trait库可以为对象的属性添加检校功能,从而提高程序的可读性,降低出错率。)和NumPy数组。此库非常庞大,因此开发公司提供了一个查询文档,用户可以通过下面语句运行它:

fromenthought.tvtk.toolsimporttvtk_doc

tvtk_doc.main()

Scikit-Learn

是基于python的机器学习库,建立在NumPy、SciPy和matplotlib基础上,操作简单、高效的数据挖掘和数据分析。其文档、实例都比较齐全。

11月4-7日北京Python数据分析与机器学习现场班(Gino老师主讲)

通过对数据分析工作中遇到的典型数据分析和挖掘案例进行深刻地分析,快速掌握Python数据分析和数据挖掘(含机器学习)的思想和方法,形成科学有效的知识和能力结构体系框架,为提升工作中的数据分析能力打下良好的基础。

培训时间:年11月4-7日(四天)

培训地点:北京市海淀区厂洼街3号丹龙大厦

授课安排:上午9:00至12:00;下午1:30至4:30;答疑

培训费用:元/元(仅限全日制本科生及硕士研究生优惠价);食宿自理

特别赠送:Python爬虫视频(课程讲师录制)

讲师介绍:

Gino:早年获得名校数学与计算机专业学士和统计学专业硕士,近20年来一直进行着数据分析的理论和实践,数学、统计和计算机功底强悍。为人低调谦和,讲课富于激情和感染力。

他在高校担任过数学、计算机和统计学老师,也曾在某一世界强公司核心部门担任高级主管负责数据建模和分析工作,在实践中攻克统计建模和数据分析难题无数,数据处理与分析科学精准,在实际应用中取得良好的预期效果。

他至今培训了来自高校、研究所、国外和各行各业的上千名学员,每一次培训都好评如潮。来自学术和业界的学员均在培训中受益颇多。

Bob:早年计算机专业科班出身,功底深厚,较早的认识Python的价值和强大的功能,多年来一直使用Python进行数据分析的工作,并且使用Python开发多个数据挖掘及信息系统的项目,积累了丰富的经验。也是国内较早的进行Python培训的讲师之一,在湖广等地帮助很多人通过掌握Python找到了满意的工作。培训中讲解的案例实用,全部来自开发实际,含金量高,以前学员认识到其价值后强烈要求加课进一步学习。

适用人群:

1.急需入门数据挖掘和建模,想使用Python从事数据分析有关工作;即将或已经在数据分析或机器学习岗位工作的人;2.想在实际数据分析工作中进一步提升技能,短时间内获取数据分析和挖掘工作经验的人。

课程特色:

1.全程没有艰深的公式,几乎全部以实际案例带动启发理解,以通俗易懂的语言讲清楚深刻的数据分析和机器学习算法思想,随时互动、答疑解惑;

2.注重学以致用、注重应用场景再现。抓住工作中经典的数据分析模型和案例加以剖析,使得学员在实际工作中很快能上手进行实际问题的解决;

3.注重实际工作经验分享,让学员在工作学习中少走弯路,以培养兴趣为引导、以阐明基本原理思想为基础,让学员掌握数据分析工作中的关键环节和技术。

课程大纲:

第1天:Python基础精要(初中级别,整个课程的基础)

一,Python数据分析基础

1、Python语法初步:主要是代码编写规范,变量的、标识符的学习,注释的一些说明。

1)变量要求,容易出错的命名方式。

2)代码的规范要求。

3)代码的注释操作和注释文档

4)变量的赋值和Python脚本文件的编码要求。

2、Python数字和内置对象

1)python的交互式操作.raw_input与input的区别

2)python内置对象:type,cmp,repr,str,isinstance,xrange,None与NULL等

3)数字与字符的计算和逻辑运算,及数字精度的注意事项。

3、Python元组

1)元组的特性

2)元组的初始化、删除、增加、修改、替换

3)元组的切片及相关的内建函数

4、Python列表和字符串

1)列表与字符串的特性

2)列表与字符串的初始化、删除、增加、修改、替换

3)字符的格式化操作

4)列表与字符的切片操作及相关的内建函数

5)特殊的字符及字符的编码与解码

5、Python集合与字典

1)字典的特性

2)字典的初始化、删除、增加、修改、替换

3)映射类型的操作及相关的内建函数

6、Python语法:条件和循环

1)条件分支语句的用法及注意事项

2)While循环语句的用法

3)For语句,range与xrange函数的用法

4)Break与continue,pass、else的运用

5)迭代器与iter函数

7、文件操作

1)File和open函数及其参数的学习

2)文件目录操作

3)文件内容的操作

8、错误和异常的处理

1)错误与异常的区别

2)Try-except-finally语法讲解

3)断言,触发异常

4)常用的异常,及自定义异常

9、模块、包

1)搜索路径及命名空间

2)import与from-import语法

3)包的讲解

10、函数

1)函数的讲解

2)函数参数

3)函数编程:lambda,匿名函数

4)内建函数apply,filter,map,reduce

5)变量作用域:globa,闭包,命名空间

6)递归

7)生成器

11、面向对象编程

1)类的定义、属性和实例化

2)类的组合、继承

3)类的方法调用和修饰符

4)类的内建函数

二、Python进阶:

1、Python中链表、栈的实现和操作

2、Python中二叉树的实现和操作

3、Python中简单排序算法、快速排序和归并排序的实现和操作

三、正则表达式

1、正则表达式使用的字符讲解

2、正则表达式的应用:匹配模式,编译形式,分割和替换

3、Re模块的讲解

四、Python应用:

1)模拟实现ATM机取钱

2)冒泡算法和二分查找

3)模拟海关

4)蒙特洛模拟

第2天:使用numpy、pandas等进行数据清洗和整理,充分统计分析数据(数据分析和挖掘前最重要的工作,直接决定了建模分析的质量,往往也是最耗时的工作)

一、Numpy基础:

1、Numpy语法初步:主要是认识和掌握Numpy的基本语法和操作

1)Numpy的数组

2)Numpy的数组的索引和切片操作

3)Numpy的通用函数

4)Numpy的数据处理

5)Numpy的对文件的操作

2、Numpy实例

通过模拟随机漫步来说明如何运用数组运算,让学员深刻认识Numpy

二、Pandas基础:

1、Pandas基础知识

1)Pandas的数据结构series和DataFrame

2)Pandas的索引、选取和过虑。

3)Pandas的排序和汇总统计

4)Pandas处理缺失的数据

2、Pandas数据的规整化

1)Pandas合并、清理数据集

2)Pandas连接数据集

3)Pandas移除重复、值替换和映射转换数据集

4)检测及过虑异常值

5)排列和随机采样

6)Pandas的字符串操作

3、Pandas数据的聚合与分组

1)Pandas的对数据分组操作

2)Pandas的对数据聚合操作

3)Pandas的交叉和透视表的应用

4、Pandas对时间序列的处理

1)Pandas的时间序列基础

2)Pandas的时间序列初始化和偏移运算

3)Pandas的时间频率处理及日期的移动

4)Pandas重采样

5、Pandas数据加载与存储

1)读写文本格式的数据

2)Pandas使用json数据

3)Pandas读写数据库

6、Pandas的案例实操作

1)大学考试成绩统计数据分析

2)Python就业数据分析

3)电影市场的分析

4)股票的交易分析

5)智慧水务的水质数据分析

6)上市公司的财务分析

第3天和第4天:Python机器学习算法和数据挖掘案例精要(根据学员在工作中遇到的各种经典的机器学习算法和实际常见案例进行分析,帮助大家快速上手、学以致用)

目标:

1.掌握机器学习分类的各种方法(决策树、朴素贝叶斯、随机森林、支持向量机、神经网络等)和经典案例

2.掌握文本分类实际案例

3.掌握推荐系统的机器学习

4.选择正确的方法和模型

5.掌握特征选择和特征工程

项目:

1.垃圾短信或邮件的识别与分类(Logistic回归)

2.使用随机森林进行预测

3.图像识别和预测的方法和应用

4.利用朴素贝叶斯进行文本分类(含算法和TF-IDF策略)

5.kaggle神器XGBoost应用案例

6.Titanic灾难事件的机器学习各种算法分析比较

7.iris数据集机器学习分类方法的比较

8.推荐系统构建方法

9.网页广告图片屏蔽器

10.支持向量机算法原理和应用场景

11.客户画像和精准营销

12.网站文本挖掘

13.手写识别

14.最近邻(kNN)算法及其案例

15.使用PCA方法进行降维

16.k-means聚类等应用实例

17.购物篮分析

18.Python机器学习量化投资实例

优惠:

现场班老学员9折优惠;

同一单位3人以上同时报名9折优惠;折扣优惠不叠加。

报名流程:

1:点击“阅读原文”,网上填写信息提交;2:给予反馈,确认报名信息;3:进入结算中心,通过订单支付;4:开课前一周发送课程电子版讲义,软件准备及交通住宿指南。

联系方式:

魏老师

Tel:-

Mail:vip

pinggu.org

预览时标签不可点收录于话题#个上一篇下一篇
1
查看完整版本: Python做数据分析简洁易读强大