Python数据分析环境和工具
一、数据分析工作环境
Anaconda:
Anaconda(水蟒)是一个科学计算软件发行版,集成了大量常用扩展包的环境,包含了 Python 解释器,conda 包管理工具,以及 NumPy、Pandas、Matplotlib 等 180 多个科学计算包及其依赖项,并且支持所有操作系统平台。
下载地址:https://www.continuum.io/downloads
conda命令和pip命令对比:
安装包:
pip install xxx,conda install xxx卸载包:
pip uninstall xxx,conda uninstall xxx升级包:
pip install upgrade xxx,conda update xxx
二、数据分析工具
Python本身的数据分析功能不强,需要第三方的扩展库来增强的它的能力。我们课程用到的库包括NumPy、Pandas、Matplotlib等,下面对这三个库做一个简单介绍,后面会通过案例深入讲解相关库的使用。
Numpy
Python并没有提供数组的功能。虽然列表可以完成基本的数组功能,但它不是真正的数组,而且在数据量较大的时候,使用列表的速度会慢的让人难以接受。为此,Numpy提供了真正的数组功能,以及对数据进行快速高效处理的函数。Numpy还是很多更高级的扩展库的依赖库,后面讲解的Matplotlib库、Pandas库都依赖于它。
Pandas
Pandas是Python下最强大的数据分析工具。它包含高级的数据结构,使得在Python中处理表格型数据非常快速和简单。Pandas构建与Numpy之上,它使得以Numpy为中心的应用很容易被使用,最初是被作为金融数据分析工具而开发出来的。
Pandas功能非常强大,支持类似与SQL的数据增、删、改、查,并且带有丰富的数据处理函数,支持灵活的处理缺失数据。
Matplotlib
处理数据分析的结果,都免不了数据可视化的问题。对于Python来说, Matplotlib来说是最著名的绘图库,它主要用于二维绘图。它可以让我们非常快捷的用Python可视化数据。
三、IDE开发工具
Jupyter Notebook:
命令:
jupyter notebook
Anaconda自带,无需单独安装
实时查看运行过程
基本的web编辑器(本地)
.ipynb 文件分享
可交互式
记录历史运行结果
支持编写markdown
IPython:
命令:
ipython
Anaconda自带,无需单独安装
Python的交互式命令行 Shell
可交互式
记录历史运行结果
及时验证结果
Spyder:
命令:
spyder
Anaconda自带,无需单独安装
免费,操作简单的图形界面IDE
PyCharm:
JetBrains公司出品,功能最强大的 Python 图形界面IDE。
收费软件,需要自行安装和购买:https://www.jetbrains.com/pycharm/download
四、Python3 常用的新特性
print() 是函数,不再是一个语句
Python2中的raw_input()输入函数,改为 input()
Python 3 对文本和二进制数据做了更为清晰的区分。
新增数据类型 bytes (字节包),代表二进制数据以及被编码的文本字符串前有个前缀
b
文本由unicode表示,为str类型
二进制数据由bytes (字节包)表示,为bytes类型
Python3中字符串类型 bytes 与 str 转换
str 可以编码(encode)成 bytes
bytes 可以解码(decode)成 str
字符串格式化输出方式:新增format()方式
dict类型变化:
之前的 iterkeys(), itervalues(), iteritems(),
改为现在的 keys(), values(), items()
五、字符串编码格式回顾:
ASCII:早期计算机保存英文字符的编码方式GB2312:对ASCII的中文扩展GBK/GB18030:包括了GB2312的所有内容,同时又增加了近20000个新的汉字和符号,是简体中文Windows环境下默认编码格式Unicode:包括了全球的符号和编码。每个字符用3~4个字节表示,浪费空间UTF-8:可变长的编码方式,在互联网上使用最广泛的一种Unicode的实现方式,根据语种决定字符长度,如一个汉字3个字节,一个字母1个字节,也是Linux环境下默认编码格式。
在Python3中,Unicode编码字符串使用str类型表示,非Unicode编码字符串(如gbk、utf-8等)用bytes类型表示。
关注【Python开发者交流平台】公众号 ,在微信后台回复【领取资源】,获取IT资源200G干货大全。
Python数据分析环境和工具的更多相关文章
- 手把手教你从零搭建Python数据分析环境
由于最近再做推荐系统的特征处理,需要借助一些工具来筛选特征.最初使用了R,R的安装很简单,而且API也很容易使用,直接就能出图.后来,发现很多人在python和R之间做选择,所以我也在两个工具间摇摆不 ...
- Mac环境下 配置Python数据分析环境
采取的思路主要依据的是这一篇文章,连接: http://www.jb51.net/article/78667.htm 但是当安装brew的时候,可能是网站的问题,一直报错 所以从网上查找资料发现,br ...
- python数据分析&挖掘,机器学习环境配置
目录 一.什么是数据分析 1.这里引用网上的定义: 2.数据分析发展与组成 3.特点 二.python数据分析环境及各类常用分析包配置 1.处理的数据类型 2.为什么选择python 三.python ...
- KNIME + Python = 数据分析+报表全流程
Python 数据分析环境 数据分析领域有很多可选方案,例如SPSS傻瓜式分析工具,SAS专业性商业分析工具,R和python这类需要代码编程类的工具.个人选择是python这类,包括pandas,n ...
- 创建Python数据分析的Docker镜像+Docker自定义镜像commit,Dockerfile方式解析+pull,push,rmi操作
实例解析Docker如何通过commit,Dockerfile两种方式自定义Dcoker镜像,对自定义镜像的pull,push,rmi等常用操作,通过实例创建一个Python数据分析开发环境的Dock ...
- python数据分析的工具环境
python做数据分析的优势: 拥有大量的库为数据分析和处理提供了完整的工具链 随着库还在不断的增加的同时, 算法的实现也更加的创新.Numpy, matplotlib, scipy,scikit-l ...
- 《Python数据分析》环境搭建之安装Jupyter工具(一)
(免责声明:本文档是针对Python有经验的用户,如果您对Python了解很少,或者从未使用,建议官方教程用Anaconda安装) 前期准备:Python环境 虽然Jupyter可以运行多种编程语言, ...
- Python数据分析工具:Pandas之Series
Python数据分析工具:Pandas之Series Pandas概述Pandas是Python的一个数据分析包,该工具为解决数据分析任务而创建.Pandas纳入大量库和标准数据模型,提供高效的操作数 ...
- python入门科普IDE工具和编译环境
应友人之邀,今天来讲述python的一些入门内容.本次讲解的并不是语法或者某个模块. python下载安装 大多数 Linux 发行版在默认安装的情况 ...
随机推荐
- C# MQTT 服务端客户端通讯
关于MQTT 在这里我就不做过多的介绍了 , 超时空连接点我 MQTT示例 注: 该示例演示统一使用WPF, 简单MVVM模式演示, 复制代码需注意引用 NuGet包 GalaSoft MQTT服务 ...
- javascript 获取HTML DOM父,子,临近节点
在Web应用程序特别是Web2.0程序开发中.常常要获取页面中某个元素,然后更新该元素的样式.内容等.怎样获取要更新的元素,是首先要解决的问题.令人欣慰的是,使用JavaScript获取节点的方法有非 ...
- 淘宝的css初始化代码
;; } body, button, input, select, textarea { font:12px/1.5tahoma, arial, \5b8b\4f53; } h1, h2, h3, h ...
- Objective-C基础笔记(4)Category
OC中提供了一种与众不同的方式--Category,可以动态的为已经存在的类添加新的行为(方法),这样可以保证类的原始设计规模较小,功能增加时再逐步扩展. 在使用Category对类进行扩展时,不需要 ...
- android组件
SlidingDrawer http://www.cnblogs.com/renyuan/archive/2012/09/16/2687929.html autocompletetextview / ...
- 用vue.js的v-for,v-if,computed写一个分页样式
在学Vue,总想写个分页,先写了一个样式. 主要看思路: 思路简单,得到总页数,判断总页数,循环. 先判断总页数是否需要分页,总页数==1页就不分了. 再判断总页数<11就不用--. 总页数&g ...
- 一个虐你千百遍的问题:“RPC好,还是RESTful好?”
看到知乎上有这样一个问题 WEB开发中,使用JSON-RPC好,还是RESTful API好? 还有其他优秀的推荐方案吗? -------------------------------------- ...
- 洛谷 P1303 A*B Problem
P1303 A*B Problem 题目描述 求两数的积. 输入输出格式 输入格式: 两行,两个数. 输出格式: 积 输入输出样例 输入样例#1: 复制 1 2 输出样例#1: 复制 2 说明 每个数 ...
- 洛谷 P1636 Einstein学画画
P1636 Einstein学画画 题目描述 Einstein学起了画画, 此人比较懒--,他希望用最少的笔画画出一张画... 给定一个无向图,包含n 个顶点(编号1~n),m 条边,求最少用多少笔可 ...
- Android控件:RadioButton(单选button)
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/ ...