手把手教你从零搭建Python数据分析环境
由于最近再做推荐系统的特征处理,需要借助一些工具来筛选特征。最初使用了R,R的安装很简单,而且API也很容易使用,直接就能出图。后来,发现很多人在python和R之间做选择,所以我也在两个工具间摇摆不定。后来,发现Tensorflow里面有很多python的代码,而且python可以做爬虫写web,几乎是万金油的角色。本着想找一门以后日常使用的工具的心态,最终还是选择了python。
那么本篇就从下面几个方面介绍下,如何在日常使用python做数据分析:
- python安装以及numpy、matplotlib的安装
- python的hello world
- SublimeText的python集成
- 相关推荐
希望对那些刚刚打算做数据分析的朋友,提供参考。
Python以及必要的库安装
Python目前有两个版本,一个是2.7,一个是3.4,在同事的推荐下,选择了2.7。Python的下载直接去官网就可以了,但是想要做数据分析,还需要依赖很多其他的模块,比如科学计算库Numpy,图形库matplotlib,数值计算库scipy,数据挖掘分析库pandas,本篇就先安装个Numpy和matplotlib,以做演示,其他库的安装基本类似。
python安装的几种方式
- 一种是在sourceforge上下载exe文件,只要操作系统版本没问题,几乎是一键安装
- 一种是下载zip或者tar.gz压缩包,使用里面的setup.py执行
setup.py install
命令安装 - 另一种是下载whl文件,放在python的scripts文件夹中,使用命令
pip install xxx.whl
安装
我这次由于需要的库比较多,下载的安装文件什么样子都有,所以几种方式都会演示下。
相关的下载资源参考分享链接:链接:http://pan.baidu.com/s/1i4Jhez7 密码:t1sw
安装Python
直接运行python-2.7.13.amd64.msi
,无脑下一步即可,不过要记住python所在的目录C:\Python27\
,稍后需要对这个目录进行添加文件。
安装numpy和matplotlib
如果版本没问题(比如不是64位系统下载安装32位软件),那么会自动识别到python所在的目录,直接下一步安装即可。
Matplotlib也是一样安装即可。
安装cycler、dateutil
把whl文件拷贝到python27/scripts目录下,可以暂时忽略requests那个文件,这个requests库是webhdfs库连接hdfs环境用的,如果不使用可以用安装
然后分别执行命令:
pip install cycler-0.10.0-py2.py3-none-any.whl
pip install python_dateutil-2.6.1-py2.py3-none-any.whl
安装pyparsing
解压pyparsing压缩包,在setup.py那层目录执行setup.py install
命令安装即可
安装到这里,numpy和matplotlib就可以使用了~
python初体验
python安装完,来体验一下吧。python支持控制台输出,也支持在新的文件中写入多行内容,统一执行。
SublimeText集成
直接使用IDLE,有点太麻烦,直接基于sublime text开发过ruby和web前端,体验非常好,所以还是想通过sublimeText编写python代码。
因此首先在点击Tools->Build System->New Build System
,弹出文件:
{
"shell_cmd": "make"
}
按照下面的配置输入:
{
"cmd": ["C:/Python27/python.exe", "-u", "$file"],
"file_regex": "[1]File "(…?)", line ([0-9]*)",
"selector": "source.python"
}
并保存成自己的名字(我起名叫做my_python),注意路径需要修改为本地的python路径。路径为C:\Users\xxh\AppData\Roaming\Sublime Text 3\Packages\User
在Tools -> Build System 中重新选择my_pyhton
然后再SublimeText中体验一下matplotlib的魅力,代码如下:
import numpy as np
import matplotlib.pyplot as plt
plt.figure(1)
ax1=plt.subplot(211)
x=np.linspace(0,100,100)
for i in xrange(1,100):
plt.figure(1)
plt.plot(x,x*2)
plt.show()
按ctrl+B即可执行:
相关推荐
1 廖雪峰的python教程:http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/
2 runoob的python教程:http://www.runoob.com/python/python-tutorial.html
手把手教你从零搭建Python数据分析环境的更多相关文章
- 手把手教你认识并搭建Nginx
手把手教你认识并搭建Nginx Nginx (“engine x”) 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 Igor ...
- 手把手教你用vue-cli搭建vue项目
手把手教你用vue-cli搭建vue项目 本篇主要是利用vue-cli来搭建vue项目,其中前提是node和npm已经安装好,文章结尾将会简单提到一个简单的例子.使用vue-cli搭建项目最开始我也是 ...
- 沉淀,再出发——手把手教你使用VirtualBox搭建含有三个虚拟节点的Hadoop集群
手把手教你使用VirtualBox搭建含有三个虚拟节点的Hadoop集群 一.准备,再出发 在项目启动之前,让我们看一下前面所做的工作.首先我们掌握了一些Linux的基本命令和重要的文件,其次我们学会 ...
- 手把手教你用webpack3搭建react项目(开发环境和生产环境)(一)
开发环境和生产环境整个配置源码在github上,源码地址:github-webpack-react 如果觉得有帮助,点个Star谢谢!! (一)是开发环境,(二)是生产环境. 一.首先创建packag ...
- 手把手教你使用 VuePress 搭建个人博客
手把手教你使用 VuePress 搭建个人博客 有阅读障碍的同学,可以跳过第一至四节,下载我写好的工具包: git clone https://github.com/zhangyunchencc/vu ...
- SpringCloud学习之手把手教你用IDEA搭建入门项目(三)
本篇博客是承接上一篇<手把手教你用IDEA搭建SpringCloud入门项目(二)>,不清楚的请到我的博客空间查看后再看本篇博客,上面两篇博客成功创建了一个简单的SpringCloud项目 ...
- SpringCloud学习之手把手教你用IDEA搭建入门项目(二)
本篇博客是承接上一篇<手把手教你用IDEA搭建SpringCloud入门项目(一)>,不清楚的请到我的博客空间查看后再看本篇博客 1)先创建一个Eureka服务注册中心模块,用来作为服务的 ...
- SpringCloud学习之手把手教你用IDEA搭建入门项目(一)
SpringCloud简单搭建 jdk:1.8开发工具:IDEA注:需要了解springcloud 1.创建最简单的Maven项目 1)开始创建一个新的项目 2)创建一个空模板的maven项目,用 ...
- 手把手教你从零写一个简单的 VUE
本系列是一个教程,下面贴下目录~1.手把手教你从零写一个简单的 VUE2.手把手教你从零写一个简单的 VUE--模板篇 今天给大家带来的是实现一个简单的类似 VUE 一样的前端框架,VUE 框架现在应 ...
随机推荐
- Java8 改进的匿名内部类:
1.匿名内部类适合创建那种只需要一次使用的类 2.匿名内部类定义格式: new 实现接口() | 父类构造器(实参列表){ //匿名内部类类体部分 } 3.从上面定义格式可以看出,匿名内部类必须实现一 ...
- BZOJ 2726 [SDOI2012] 任务安排 - 斜率优化dp
题解 转移方程与我的上一篇题解一样 : $S\times sumC_j + F_j = sumT_i \times sumC_j + F_i - S \times sumC_N$. 分离成:$S\t ...
- python性能测试大致计划
hi guy: 如果注意到创建时间,那就对了.这份文章,是我学习Python一个月以后动手写的. 写下这份计划以后,只完成了第一步,其中磕磕绊绊编写代码的过程,很大一部分时间是完全用txt写的 ...
- datagrid分页 从后端获取数据也很简单
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Datagrid.aspx. ...
- jquery插件解读之tabs
先上代码,符简略关键性说明: /** * jQuery EasyUI 1.4.1 * * Copyright (c) 2009-2014 www.jeasyui.com. All rights re ...
- linux下 C程序 参数和内存
#include <stdio.h> int main(argc, argv) int argc;char *argv[]; { printf("argc=%d \n&q ...
- 【Log】logback指定配置文件(二)
通常我们在不同的环境使用不同的日志配置文件,本章讲指定logback的配置文件,如何使用logback参照[Log]logback的配置和使用(一) 写一个配置加载类,注意JoranConfigura ...
- 情境领导II
情境领导理论认为,领导者的行为要与被领导者的准备程度相适应,才能取得有效的领导效果,也就是说领导风格不是一成不变的,而要根据环境及员工的变化而改变. 三大技巧分别为诊断.弹性与约定领导型态.诊断是评估 ...
- No cache or cacheManager properties have been set. Authorization cache cannot be obtained.
20235 [http-bio-8080-exec-10] INFO o.a.shiro.realm.AuthorizingRealm - No cache or cacheManager prope ...
- Spring源码解析 - BeanFactory接口体系解读
不知道为什么看着Spring的源码,感触最深的是Spring对概念的抽象,所以我就先学接口了. BeanFactory是Spring IOC实现的基础,这边定义了一系列的接口,我们通过这些接口的学习, ...