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 发行版在默认安装的情况 ...
随机推荐
- Windows学习总结(1)——win10系统最新快捷键汇总
Win10新增功能快捷键大全: 贴靠窗口:Win + 左/右 > Win + 上/下 > 窗口可以变为 1/4 大小放置在屏幕 4 个角落. 切换窗口:Alt + Tab(不是新的,但任 ...
- IntelliJ IDEA 中如何配置多个jdk版本即(1.7和1.8两个jdk都可用)
IntelliJ IDEA使用教程 (总目录篇) 有时候需要看Java源码,但是 Java 1.7 和 Java 1.8的差别的关系,有时候你想查看不同jdk版本的Java源码. 或者你的项目需要测试 ...
- 洛谷 P2242 公路维修问题
P2242 公路维修问题 题目描述 由于长期没有得到维修,A国的高速公路上出现了N个坑.为了尽快填补好这N个坑,A国决定对M处地段采取交通管制.为了求解方便,假设A国的高速公路只有一条,而且是笔直的. ...
- FileChannel的深入理解
一,官方描写叙述 一个读,写,映射,操作文件的通道. 文件通道有能够被查询和改动的一个当前位置.文件本身包括了一个可悲读写的变长字节序列,而且它的当前的size会被查询.当被写入的字节超过当前文件的大 ...
- angularjs 合并单元格
Html: <table class="table table-striped"> <thead> <tr> <th>国家</ ...
- numpy_basic2
# 六.numpy的常用函数 1. 读取文件 逻辑上可被解释为二维数组的文本文件: 数据项1<分隔符>数据项2<分隔符>...<分隔符>数据项n numpy.loa ...
- 【例题 8-5 UVA - 11054】Wine trading in Gergovia
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 考虑第一个店. 如果它要酒的话,只能从第二个店那里运过来. 这样,问题就转化成后n-1个店的问题了. 然后会发现,第二家店它的情况也 ...
- 洛谷——U10783 名字被和谐了
https://www.luogu.org/problem/show?pid=U10783 题目背景 众所周知,我们称g是a的约数,当且仅当g是正数且a mod g = 0. 众所周知,若g既是a的约 ...
- 关于React中,map出来的元素添加事件问题
用es6 map 的写法 直接绑定一个onTouchStart 事件不会报错. 用es5的map写法 如果不加上this 会报这个错误 无法读取未定义的属性 解决的方法是 绑定this 就可以了
- 【Codeforces Round #447 (Div. 2) B】Ralph And His Magic Field
| [链接] 我是链接,点我呀:) [题意] 给你一个n*m矩阵,让你在里面填数字. 使得每一行的数字的乘积都为k; 且每一列的数字的乘积都为k; k只能为1或-1 [题解] 显然每个位置只能填1或- ...