虚拟环境:
 
虚拟环境是用于创建独立的python环境,允许我们使用不同的python模块和版本,而不混淆。
 
让我们了解一下产品研发过程中虚拟环境的必要性,在python项目中,显然经常要使用不同的python库(包装器)来完成工作,但结局并不总是圆满的,大部分时候,我们会面临着诸如python应用无法在新的机器(操作系统)上运行的环境问题,这是新机器上Python库的依赖问题导致的。为了更好的理解,设想在开发python应用的过程当中,我们使用了python pandas(python的数据分析库)0.18.0版本中的函数,而这个函数在新机器安装的0.17.1的python pandas库里没有,由于版本差异,python应用就无法在新机器上运行。
 
要解决这个问题,我们需要使用一个包含了项目所需的所有东西的python环境,从而可以有序独立地运行。
 
python项目开发,不管你要忙于多少个项目,使用虚拟环境都是非常推荐的一种方式。
 
在Ubuntu系统下,创建虚拟环境相当简单,使用virtualenv就可以了(一个创建独立python环境的工具)。
 
关于virtualenv:
virtualenv通过创建隔离的环境解决项目的依赖冲突问题,这些隔离的环境包括python开发者项目所需的所有工具。用这个工具创建的虚拟环境包括新的python二进制文件,其实是整个python标准库的拷贝。
 
安装virtualenv:
$ sudo pip install virtualenv
 
现在我们已经成功安装了virtualenv,现在我们创建一个文件夹(环境),我们将安装python数据挖掘包。
 
创建虚拟环境:
$ virtualenv dataaspirant_venv
在当前路径下会创建一个文件夹,包含了python的可执行文件和pip库,便于你安装其他包。虚拟环境的名称可以是任何名称,在这个例子中,名为dataaspirant_venv,省略名称的话,文件就会默认放在当前目录。
 
这将创建一个在任何路径下都可以命令运行的python拷贝,只不过是把它放在了一个名为dataaspirant_venv的文件夹里。
 
使用虚拟环境
要使用虚拟环境,执行以下命令:
$ source dataaspirant_venv/bin/activate

当前虚拟环境的名称会出现在命令行提示符的左边,让你知道当前的虚拟环境是哪个,从现在开始,你用pip安装的任何包都被放进dataaspriant_env文件夹,和全局的python安装是隔离的。

 
python数据挖掘包安装
开始安装python数据挖掘包了
 
安装numpy
$ pip install numpy
 
安装scipy
$ pip install scipy
 
安装matplotlib
$ pip install matplotlib
安装ipython
$ pip install ipython[all]
安装pandas
$ pip install pandas
安装Statsmodel
$ pip install statsmodel
安装scikit-learn
$ pip install scikit-learn
运行脚本文件
当虚拟环境是使用状态时,你只需要到你的script文件所在路径下,运行即可。
$ python script_file.py
停用虚拟环境
如果你不再需要虚拟环境,可以停用。
 
$ deaactivate

接着你就会回到系统默认的python环境。

要删除一个虚拟环境,只需要删除文件夹,本例中使用rm -rf dataaspriant_env即可。
 
参考:
 
关注我们:

FACEBOOK| QUORA |TWITTER| REDDIT | FLIPBOARD |LINKEDIN | MEDIUM| GITHUB

希望你喜欢今天的文章,如果您有任何疑问,欢迎发表评论,如果你希望我们写某个特定的主题,也可以在评论下告诉我们。
如果你想分享你的经验和建议,请联系 hello@dataaspirant.com
感谢阅读
Home|About| Data scientists Interviews |For beginners|Join us|  Monthly newsletter
 
 
这是一篇译文,原文链接为:
 
转载请注明出处,欢迎交流python技术。

Ubuntu系统下创建python数据挖掘虚拟环境的更多相关文章

  1. ubuntu系统下创建软件桌面快捷方式

    转自ubuntu系统下创建软件桌面快捷方式 默认情况下,ubuntu会将自动安装的软件快捷方式保存在/usr/share/applications目录下,如果我们要创建桌面快捷方式,只需要右键-复制- ...

  2. ubuntu下创建python的虚拟环境

    当我们在同一个机器上进行开发多个项目,每个项目于用到包的不同版本的时候,就很尴尬. 安装python包的命令是: sudo pip install 包名 这样的话,会将包安装到/usr/local/l ...

  3. Ubuntu系统下搭建Python开发环境

    之前演示了在Windows中安装Pycharm,很简单.下面介绍一下如何在Ubuntu中安装Pycharm 1.更新Python至3.5.1,执行以下命令: sudo add-apt-reposito ...

  4. ubuntu系统下Python虚拟环境的安装和使用

    ubuntu系统下Python虚拟环境的安装和使用        前言:进行python项目开发的时候,由于不同的项目需要使用不同的资源包和相关的配置,因此创建多个python虚拟环境,在虚拟环境下开 ...

  5. windows下创建Python虚拟环境

    windows下创建Python虚拟环境 说明 由于Python的版本众多,还有Python2和Python3的争论,因此有些软件包或第三方库就容易出现版本不兼容的问题. 通过 virtualenv ...

  6. ubuntu系统下安装pyspider:搭建pyspider服务器新手教程

    首先感谢“巧克力味腺嘌呤”的博客和Debian 8.1 安装配置 pyspider 爬虫,本人根据他们的教程在ubuntu系统中进行了实际操作,发现有一些不同,也出现了很多错误,因此做此教程,为新手服 ...

  7. CentOS和Ubuntu系统下安装 HttpFS (助推Hue部署搭建)

    不多说,直接上干货! 我的集群机器情况是 bigdatamaster(192.168.80.10).bigdataslave1(192.168.80.11)和bigdataslave2(192.168 ...

  8. Houdini 13在Ubuntu系统下流畅运行、不崩溃

    至尊影视特效软件Houdini FX,当前最新版是13.0.547,经过试用在Ubuntu系统下可以完美运行,目前为止还没出现过崩溃的情况,之前在windows下使用Houdini 13简直就是噩梦, ...

  9. Ubuntu系统下OpenDaylight源码编译安装

    操作系统:Linux x64 / Ubuntu 14.04 研究领域:软件定义网络SDN (Software-defined Networking) 开发组件:OpenDaylight 声明:转载请注 ...

随机推荐

  1. [转]如何正确设置nginx中remote_addr和x_forwarded_for参数

    做网站时经常会用到remote_addr和x_forwarded_for这两个头信息来获取客户端的IP,然而当有反向代理或者CDN的情况下,这两个值就不够准确了,需要调整一些配置. 什么是remote ...

  2. Nightmare(DFS)

    Nightmare    hdu1072 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Oth ...

  3. 分西瓜(DFS)

    描述今天是阴历七月初五,acm队员zb的生日.zb正在和C小加.never在武汉集训.他想给这两位兄弟买点什么庆祝生日,经过调查,zb发现C小加和never都很喜欢吃西瓜,而且一吃就是一堆的那种,zb ...

  4. Android中动态更新TextView上的文字

    示例代码: 1.新线程,定时更新文字 class testThread extends Thread{ public void run() { Message message = new Messag ...

  5. mongodb batchInsert

    看到<MongoDB 权威指南>第二版P30提到了一个batchInset的插入方法,对于一次性插入大量数据时可以提高性能.按照书上的列子,却提示错误: 本书是基于MongoDB V2.4 ...

  6. SD card技术了解并WINCE下SDHC驱动开发(updated)

    Suumary: 简单介绍了一下SD卡的历史和发展,同时结合MX31 ADS上的WINCE 下SDHC驱动更深入的了解该硬件的一些行为特点. 了解SD card SD是Secure Digital C ...

  7. Qt中事件分发源代码剖析(一共8个步骤,顺序非常清楚:全局的事件过滤器,再传递给目标对象的事件过滤器,最终传递给目标对象)

    Qt中事件分发源代码剖析 Qt中事件传递顺序: 在一个应该程序中,会进入一个事件循环,接受系统产生的事件,并且进行分发,这些都是在exec中进行的.下面举例说明: 1)首先看看下面一段示例代码: in ...

  8. 35+雪花Logos设计灵感

    快中秋节放假了,给大家分享一些雪花Logos设计灵感,陶冶下心情吧! 原文地址:http://www.goodfav.com/35-snowflake-logos-ideas-17134.html V ...

  9. Hadoop: the definitive guide 第三版 拾遗 第十二章 之Hive分区表、桶

    Hive分区表 在Hive Select查询中一般会扫描整个表内容,会消耗很多时间做没必要的工作.有时候只需要扫描表中关心的一部分数据,因此建表时引入了partition概念.分区表指的是在创建表时指 ...

  10. MassMutual Interview Questions

    Company MassMutual Date 30/09/15 Location Boston, MA Position Application Developer It's not a codin ...