在MAC上搭建python数据分析开发环境


最近工作转型到数据开发领域,想在本地搭建一个数据开发环境。自己有三年python开发经验,马上想到使用numpy、scipy、sklearn、pandas搭建一套数据开发环境。

ubuntu的环境,百度中文章比较多,搭建起来非常顺利。MAC环境的资料比较少,百度出来的,已经不对了,那我就来补充一篇吧。

MAC自带python,python的安装我就不多说了。

安装pip

我喜欢用pip安装python库,非常方便,pip的安装只能用源码了。

#下载源代码
https://pypi.python.org/pypi/pip 我去下载的时候是 8.0.2版本
#解压
tar xvzf pip8.0.2.tar.gz

#安装
cd pip-1.4.1
python setup.py install

安装numpy

numpy是基础,是scipy等其它库等基础,没什么依赖,安装起来相对简单。

pip install numpy

安装brew

numpy安装之后,就是安装scipy了,为什么插了一竿子呢?它依赖fortran库,fortran库的安装需要用到MAC的包管理工具homebrew

#下载brew
curl -LsSf http://github.com/mxcl/homebrew/tarball/master 
sudo tar xvz -C/usr/local --strip 1

安装scipy

scipy 是sklearn的基础,但它依赖gfortran库,gfortran已经融入到gcc库中,安装gcc就好了,有了brew安装什么包都变得非常简单了。

#安装gcc库
brew install gcc

#安装scipy
pip install scipy
后面的安装,就按步就班了

#安装matplotlib,方便把数据绘图显示出来
pip install matplotlib

#安装sklearn,我理解这个安装必须在pandas之前
pip install -U numpy scipy scikit-learn

#安装pandas
pip install pandas

到这里环境就搭建好了,开搞吧,其实搭起来也非常简单。提醒下,安装时注意权限,如果需要权限就在前面加个sudo。

python中的编码知识整理汇总
问题在平时工作中,遇到了这样的错误:UnicodeDecodeError:'ascii'codeccan'tdecodebyte想必大家也都碰到过,很常见。于是决定对python的编码做一个整理和学习。

Python函数中*args和**kwargs来传递变长参数的用法
单星号形式(*args)用来传递非命名键可变参数列表。双星号形式(**kwargs)用来传递键值可变参数列表。下面的例子,传递了一个固定位置参数和两个变长参

举例讲解Python设计模式编程中的访问者与观察者模式
访问者模式我觉得Visitor模式是在补修改已有程序结构前提下,通过添加额外的访问者完成对代码功能的拓展为什么这样用?当你的类层次较多,在某层