为什么要用PYTHON来做数据分析
-
MATLAB
-
R语言,语法类似C语言,但是它在语义上是函数设计语言,也是开源的。
-
python 的优势:
-
有大量的库为数据分析和处理提供了完整的工具链
-
python的库很多,而且库一直在增加,算法的实现更加的创新。Numpy, matplotlib, scipy,scikit-learn
-
python还能和跟多其他语言对接,比如C语言
-
相对于R和MATLAB,python还可以做各种其他的事,web开发,爬虫,脚本、运维、机器学习。
-
PYTHON数据分析的环境
ANACONDA 的安装和使用
什么是anaconda
一个跨语言、跨系统的集包管理、环境管理于一身的工具
anaconda的特点:
-
开源
-
简单易用、安装、使用都很简单
-
支持python和R语言
下载地址:
安装过程
windows 注意:
-
选just for me 选项
-
添加到path 中
-
安装完了以后: anaconda navigator, anaconda prompt, jupyter notebook
Linux 注意:
-
添加到.bashrc文件,并source这个文件
安装完成以后,如何检查是否已经安装成功:
conda --version
升级到最新版本
conda update conda
改一下源的地址,改为国内的:
清华源地址:
配置一下国内的源:
# 添加清华源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
# 设置在下载的时候显示源的Url
conda config --set show_channel_urls yes
# 查看源是否已经添加成功
conda config --show channels
使用CONDA配置环境
创建环境
# 创建一个名为py35的环境,指定python版本为3.5
# (不管是指定3.4,3.5,conda会为我们自动寻找最新的版本)
conda create --name py35 python=3.5
激活环境
# 在windows下直接activate激活
activate py35
# 在Linux或者Mac下,使用source activate 激活
source activate py35
激活以后,会发现控制台的命令行前面多了个(py35)的字样,这表示我们已经进入py35的环境里了。
# windows退出环境
deactivate py35
# Linux退出环境
source deactivate py35
# 删除环境
conda env remove -n py36
使用conda做包管理
查看已经安装的包
# 查看当前环境中的包,已安装的包和对应的版本
conda list
# 查看指定环境内的包
conda list -n py35
查找某个包
# 查找指定的包是否可以通过conda来安装
# 会返回这个包的信息,如果能看到相关信息,说明这个包可能用conda来安装
conda search numpy
# 如果卡着不动,有可能网络原因,可以使用--offline参数
conda search numpy --offline
安装包
# 通过conda来安装Numpy
# 如果numpy已经安装,会提示已安装
conda install numpy
更新包
# 通过conda更新包
conda update numpy
卸载包
conda remove numpy
以上就是conda对包的安装、更新、卸载。值得一提的是,conda将conda、python、pip都视为包,因此,完全可以使用conda来管理conda和python的版本,比如:
# 将conda更新到最新版本
conda update conda
# 同样的,也可以更anaconda到最新版本
conda update anaconda
# 更新python
# 比如我们现在是python3.5.5,执行下面的命令,就会更新到python3.5.x的最新版本
conda update python
conda 和virtualenv / pip 的关系和区别
首先anaconda包含了navigator、prompt、conda、jupyter这些工具,同时也包含了python、pip、virtualenv等工具库
conda和pip的关系:
-
conda是包管理和环境管理工具,conda还支持多种环境的管理,包括python、R,注意:包括语言本身,不仅仅是语言的包
-
pip仅仅是python的包管理工具
-
conda不会影响系统自带的python
conda和virtualenv的关系
-
conda是结合了pip和virtualenv的功能
-
conda可以创建多个Python版本的虚拟环境
-
virtualenv只能创建指定版本的环境
如何判断管理虚拟环境
# 查看pip的绝对路径
which pip
# 查看当前环境中的pip使用的是什么python
cat $(which pip)
我们可以编辑pip文件中的第一行,来改变我们的pip使用的python解释器
vim $(which pip)
#! /Users/guye/anaconda/envs/py35/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from pip._internal import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(main())
或者也可以直接写pip的绝对路径来安装包
JUPYTER NOTEBOOK的使用
启动JUYPTER
# 在默认地址和端口启动jupyter
jupyter notebook
# 在指定地址和端口启动
jupyter notebook --ip=0.0.0.0 --port=8000
自定义jupyter
# 创建一个目录 .jupyter/custom
mkdir -p ~/.jupyter/custom
# 添加编辑custom.js或者custom.css
vim custom.js
# 在js文件内写javascript代码