用Python做数据分析的环境初始化

从一个标准的Python环境,到一个可以做数据分析的环境,还需要有一些准备工作。 本文就是记录这些准备工作,便于查阅。

安装Python

注意:为了避免一些问题,建议使用官方编译好的Python,而不要从cpython源码编译。

Debian/Ubuntu

sudo apt-get install python3 python3-dev

Max OS X

brew install python3

Windows

CLI安装方式不是没有,但还是推荐去Python官网下载安装。

安装配置pip

国内访问[PyPI]会偶尔遇到网络问题,并且速度一般。 通常需要修改为国内的代理源,常用中科大(USTC)、清华(tuna)或阿里(OPSX)。 这里以阿里源为例,把以下内容添加到$HOME/.pip/pip.conf文件(Windows下为%userprofile%\pip\pip.ini)中。

[global]
trusted-host = mirrors.aliyun.com
index-url = https://mirrors.aliyun.com/pypi/simple/

然后下载get-pip.py,安装pip。 CLI下可用wget https://bootstrap.pypa.io/get-pip.py获取该文件。

python3 get-pip.py -U pip

安装相关软件包

在Python 3(推荐使用3,虽然强行用2也可以)以及pip等基本软件都准备好,并且pip的源也以及配置为国内源的前提下,安装Python数据分析相关的包,是简单而迅速的。

pip3 install ipython jupyter numpy pandas matplotlib seaborn scikit-learn

可以选择在前面加sudo给所有用户安装,或者在后面加--user给当前用户安装。

如果考虑Python环境的干净与隔离,也可使用virtualenv来做一个(或多个)专门做数据分析的环境。

pip3 install --user virtualenv
virtualenv -p python3 .env
source .env/bin/activate
# Then, pip install ...

使用Jupyter Notebook

通过写Python文件,或直接在IPython进行数据分析,并不是不行。 只是需要查看图形时,会遇到一些麻烦。 所以,Python的数据分析往往是在Jupyter Notebook中进行。

在命令行执行jupyter-notebook(或jupyter notebook,此外还有一个老的入口ipython notebook),即可启动一个server,并自动打开一个网页。 这个server默认使用8888端口,如果被占用,会递增尝试端口。

Jupyter Preview

与CLI的IPython相比,Jupyter Notebook是一个基于浏览器的GUI交互界面,像是一个IDE。 它可以看做一个GUI版的IPython,不仅能显示Python代码执行后的结果,甚至还能显示matplotlibseaborn绘制的图片。 它也可以看做Markdown编辑器,能混合Markdown内容,支持LaTeX公式,写出图文并茂的HTML页面。

测试环境

在准备好的环境中,打开Jupyter Notebook。 在第一个Cell中,输入以下内容,并执行。

%matplotlib inline

import warnings
warnings.filterwarnings('ignore')

import numpy as np
import pandas as pd
import seaborn as sns
import sklearn as sk
from matplotlib import pyplot as plt

另一种环境准备:Anaconda Distribution

With over 6 million users, the open source Anaconda Distribution is the easiest way to do Python data science and machine learning. It includes 250+ popular data science packages and the conda package and virtual environment manager for Windows, Linux, and MacOS. Conda makes it quick and easy to install, run, and upgrade complex data science and machine learning environments like Scikit-learn, TensorFlow, and SciPy. Anaconda Distribution is the foundation of millions of data science projects as well as Amazon Web Services' Machine Learning AMIs and Anaconda for Microsoft on Azure and Windows.

Anaconda打包了250多个常用的科学计算、数据分析、机器学习的软件包(导致其安装包超过500MB),能让用户在安装完成后就可以直接使用。 此外,还自带一个conda命令来作为包管理器,对软件包进行搜索、安装、更新、卸载等操作。 它还包装了virtualenv的功能,可以创建、切换多个独立的Python环境。 甚至,它还自带了一个IDE——Spyder。 总之,All in One

从一个经验丰富的Python开发者的角度看,Anaconda做了很多多余的事。 (因此,它对孤没有什么吸引力。) 但是,对于完全不了解Python生态的人来说,它却非常省事。 推荐Python小白(或Windows用户),去Anaconda Download页面下载安装。

参考


相关笔记