由于最近再做推荐系统的特征处理,需要借助一些工具来筛选特征。最初使用了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


  1. ↩︎

手把手教你从零搭建Python数据分析环境的更多相关文章

  1. 手把手教你认识并搭建Nginx

    手把手教你认识并搭建Nginx Nginx (“engine x”) 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 Igor ...

  2. 手把手教你用vue-cli搭建vue项目

    手把手教你用vue-cli搭建vue项目 本篇主要是利用vue-cli来搭建vue项目,其中前提是node和npm已经安装好,文章结尾将会简单提到一个简单的例子.使用vue-cli搭建项目最开始我也是 ...

  3. 沉淀,再出发——手把手教你使用VirtualBox搭建含有三个虚拟节点的Hadoop集群

    手把手教你使用VirtualBox搭建含有三个虚拟节点的Hadoop集群 一.准备,再出发 在项目启动之前,让我们看一下前面所做的工作.首先我们掌握了一些Linux的基本命令和重要的文件,其次我们学会 ...

  4. 手把手教你用webpack3搭建react项目(开发环境和生产环境)(一)

    开发环境和生产环境整个配置源码在github上,源码地址:github-webpack-react 如果觉得有帮助,点个Star谢谢!! (一)是开发环境,(二)是生产环境. 一.首先创建packag ...

  5. 手把手教你使用 VuePress 搭建个人博客

    手把手教你使用 VuePress 搭建个人博客 有阅读障碍的同学,可以跳过第一至四节,下载我写好的工具包: git clone https://github.com/zhangyunchencc/vu ...

  6. SpringCloud学习之手把手教你用IDEA搭建入门项目(三)

    本篇博客是承接上一篇<手把手教你用IDEA搭建SpringCloud入门项目(二)>,不清楚的请到我的博客空间查看后再看本篇博客,上面两篇博客成功创建了一个简单的SpringCloud项目 ...

  7. SpringCloud学习之手把手教你用IDEA搭建入门项目(二)

    本篇博客是承接上一篇<手把手教你用IDEA搭建SpringCloud入门项目(一)>,不清楚的请到我的博客空间查看后再看本篇博客 1)先创建一个Eureka服务注册中心模块,用来作为服务的 ...

  8. SpringCloud学习之手把手教你用IDEA搭建入门项目(一)

    SpringCloud简单搭建 jdk:1.8开发工具:IDEA注:需要了解springcloud 1.创建最简单的Maven项目 1)开始创建一个新的项目 ​ 2)创建一个空模板的maven项目,用 ...

  9. 手把手教你从零写一个简单的 VUE

    本系列是一个教程,下面贴下目录~1.手把手教你从零写一个简单的 VUE2.手把手教你从零写一个简单的 VUE--模板篇 今天给大家带来的是实现一个简单的类似 VUE 一样的前端框架,VUE 框架现在应 ...

随机推荐

  1. Luogu 3953[NOIP2017] 逛公园 堆优化dijkstra + 记忆化搜索

    题解 首先肯定是要求出单源最短路的,我用了堆优化dijikstra ,复杂度 mlogm,值得拥有!(只不过我在定义优先队列时把greater 打成了 less调了好久 然后我们就求出了$i$到源点的 ...

  2. 复制文件描述符---dup

    函数功能:复制文件描述符 头文件:#include<unistd.h> 函数原型:int dup(int oldfd) 参数说明:oldfd:旧的文件描述符 返回值:成功返回-个新的文件描 ...

  3. .NET中的Func委托用法

    MSDN对于Func<T, TResult>)的官方解释: 封装一个具有一个参数并返回 TResult 参数指定的类型值的方法. 下面通过几个例子对比下,就容易知道其用法: 以下例子演示了 ...

  4. 使用kubeadm安装kubernetes1.12.2版本脚本

    Master节点脚本: #!/bin/sh#使用系统的PATH环境export PATH=`echo $PATH` #停止firewall防火墙,并禁止开机自启动 systemctl stop fir ...

  5. 使用PrintWriter out=response.getWriter();输出script脚本时乱码解决

    使用PrintWriter out=response.getWriter();输出script脚本时乱码解决 最近遇到了一个奇怪的事情,仅仅用out.print("<script ty ...

  6. hdu-1063(大数)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1063 思路:1.大数乘法模板 2.考虑小数点的位置 3.乘法前后判断前后道0 参考文章:https:/ ...

  7. 删除k8s中一直处于Terminating的资源

    1.将所有的etcd中的key值取到一个keys.yam里面,便于查询 ETCDCTL_API=3 etcdctl get "" --from-key > keys.yaml ...

  8. where /group by/ having/ order by/

    1.order by 是 按字段 进行排序.. 字段后面可跟 desc 降序..asc 升序..默认为升序2.group by 是进行分组 查询3.having 和 where 都属于 条件过滤 区别 ...

  9. [笔记]linux命令学习

    scp /root/Downloads/cymothoa-1-beta.tar.gz root@192.168.1.66:/root/ rc.local exit 0前加入: sh /root/abc ...

  10. (网络流) Sabotage -- UVA -- 10480

    链接: http://acm.hust.edu.cn/vjudge/contest/view.action?cid=82835#problem/J 代码: #include<cstdio> ...