美文网首页python生信学习我爱编程
【基础篇】1-介绍与学习准备

【基础篇】1-介绍与学习准备

作者: 王诗翔 | 来源:发表于2018-03-25 23:29 被阅读376次

    在正式学习用Python进行数据分析之前,我们先来简单的了解下Python以及进行学习之前的软件安装和配置。

    Python是什么

    在IEEE发布的2017年编程语言排行榜中,Python高居首位。对于这样一门流行的编程语言,无数的Python入门图书都给相关的定义,但我个人认为,最清晰明了的说明来自维基百科:

    Python是一种广泛使用的高级编程语言,属于通用型编程语言,由吉多·范罗苏姆创造,第一版发布于1991年。可以视之为一种改良(加入一些其他编程语言的优点,如面向对象) 的LISP。作为一种解释型语言,Python的设计哲学强调代码的可读性和简洁的语法(尤其是使用空格缩进划分代码块,而非使用大括号或者关键词)。相比于C++或Java,Python让开发者能够用更少的代码表达想法。不管是小型还是大型程序,该语言都试图让程序的结构清晰明了。

    这一段话虽然不长,却简要地囊括了读者需要了解的Python最基本的信息:

    1. Python被广泛使用
    2. 属于高级编程语言,这区别于C这样的中级语言或是底层的硬件编程、汇编等语言
    3. 创始人为吉多·范罗苏姆,于1991年发布
    4. 支持面向对象编程(OOP)
    5. 属于解释型语言,解释型语言以文本的方式存储程序代码,不需要在运行前进行编译(为大众所熟知的C语言就不是解释型语言,在运行前必须编译为机器识别的语言)
    6. 强调代码的可读性和简洁的语法是Python的设计哲学,这一点尤为需要注意和理解,这是Python在形式上最有别于其他编程语言之处,Python使用空格的缩进来划分不同的代码块,其他一些常见语言一般使用大括号或者关键字。正是这个特点,让Python代码不论大小长短都看起来非常简单清晰,易于使用(我们会在学习的过程中深入理解这一特点)

    为何要使用Python进行数据分析

    近一些年,Python的科学计算库不断进行改良,比如结构化数据操作库pandas、机器学习库scikit-learn,使得利用Python来进行数据分析任务是一个非常优选的方案;不仅如此,Python有一个“胶水语言”的外号,它能够非常轻松地集成C、C++等底层代码,进行计算优化;与SAS和R这样分析建模领域特定编程语言相比,Python可以同时用于项目原型的构建和生产,从而免去使用多个语言的苦恼。加上Python本身几十年精进的强大编程能力,我们只使用Python就可以完成以数据为中心的建模、分析与应用。

    科学计算核心库简介

    Python拥有着众多的软件包/库,我们难以一一涉猎和学习,这里简单介绍几个构成Python科学生态系统的核心成员,我们会在学习Python基本知识后进行简单学习和使用:

    • NumPy:是Numerical Python的简称,是Python科学计算最基础的库,基本上涉及数据分析的软件包都基于NumPy构建。
    • pandas:名字来源于Python数据分析(Python data analysis)和面板数据(panel data)的结合。该库提供了多个数据存储对象,其中的DataFrame对象可以表征数据分析常见的二维表格;除此之外,它提供了非常多便捷处理结构化数据的函数。
    • matplotlib:起源于矩阵实验室MATLAB中的绘图函数,是python中最流行的绘图库,可以轻松进行二维数据甚至多维数据可视化。
    • SciPy:该库提供了一组专用于科学计算中各种标准问题包,像数值积分、微分、信号处理,它与NumPy的结合可以处理诸多科学计算问题。
    • Jupyter:是一个交互和探索式计算的高效环境。其中两个组件最为常用,一是IPython,用于编写、测试和调试Python代码;二是Jupyter Notebook,是一个多语言交互式的Web笔记本,现在支持运行python、R等多种语言,与Markdown结合可以创建良好、可重复的动态文档。这也是我们进行Python数据分析的学习环境。

    软件安装与配置

    Python存在Python2(现在一般指Python2.7)和Python3(现在一般指Python3.5及以上)两个不同的版本,官方已经发布声明2020年将停止Python2的更新和维护,全面进入Python3时代。因此,我们学习都以Python3版本为标准。

    另一个我们需要解决的问题是IDE(集成开发环境),现在流行的Python集成开发环境很多,比如PyCharm、Sublime Text、Eclipse+Pydev和Anaconda中的Spyder。不同的软件、系统安装和配置方式各不相同,为统一学习者的使用环境,我们使用Anaconda平台的Jupyter notebook进行学习。Anaconda是非常强大的跨系统开源计算平台,支持我们个人PC使用的Windows、Linux和MAC,提供的近1000个软件包可以完全解决我们个人工作任务需求。

    为方便大家不同个人电脑配置下的学习,我介绍一下线上和本地机器上学习环境的安装和配置,读者任选其一即可。

    线上平台

    网络上现在有很多在线的Python解释器,可以在有网的情况下通过浏览器运行代码。因为包的导入和计算都在服务器端,因而学习者不需要较高的配置的电脑就能进行学习和分析。这里我推荐两个免费Jupyter Notebook网址,大家结合自己电脑的配置和网络情况使用。

    一是Jupyter官方提供的使用Ipython学习教程网站,包含学习Ipython使用的例子和练习,读者可以在教程的主页运行、调试代码,并下载Jupyter笔记本到本地存储。

    Jupyter官方提供的在线网站

    二是微软公司提供的Jupyter数据探索学习平台(https://notebooks.azure.com/),支持在线运行多种语言进行数据科学探索,最常用的就是Python和R啦。读者可以通过微软账户创建仓库,新建Jupyter Notebook书写代码和探索数据,完成后可以保存、与他人分享(使用过Github等开源仓库的读者会发现这个平台的操作极为相似)。

    微软Jupyter数据科学学习平台

    两者相比较,我更推荐读者使用后者。经过我的测试,发现前者在使用过程中比较容易崩溃,运行代码效率也低;后者在创建、使用、保存与分享方面都优于前者,不过大家首先需要做的就是拥有一个微软账号。

    本地安装与配置

    如果想要在本地部署学习环境,我们需要安装两款软件。第一款是我们前面已经提及的Anaconda,为必需软件;第二款为nteract(https://nteract.io/),为可选软件。与Anaconda默认提供的Jupyter Notebook不同,nteract像我们常用的文字编辑器一样,界面非常简洁酷爽,可以非常方便的编辑Jupyter Notebook文件(文件后缀名为.ipynb)。不过nteract目前只有alpha版本(测试版),功能还在完善中,当然这不会影响我们使用它学习Python,所以推荐读者大家尝鲜使用,本书后面的代码和文档展示也都会使用它。由于Jupyter Notebook与nteract运行Python都是基于ipython内核ipykernel,除了显示效果,在使用上并没有太多的不同,因而读者完全不必担心软件的选择和使用问题。

    nteract官网

    Anaconda下载与安装

    读者可以到Anaconda官网下载地址(https://www.anaconda.com/download/)下载对应系统的Python 3.6版本的Anaconda。安装过程在Windows和Mac系统上跟普通软件相似,一路点击下一步、同意协议等等即可,唯一需要的一点是将Anaconda路径添加到环境变量,Windows系统如下图所示:

    Windows安装Anaconda注意事项

    Linux使用命令行安装(Mac也可以),下载完成后打开文件所在目录并在该目录下打开终端(也可以从其他目录使用cd命令切换过去)。

    然后键入命令:

    # 除了使用浏览器,也可以通过终端下载Anaconda
    # https://repo.continuum.io/archive/Anaconda3-5.1.0-Linux-x86_64.sh
    
    # 添加执行权限
    chmod u+x Anaconda3-5.1.0-Linux-x86_64.sh
    # 执行安装
    ./Anaconda3-5.1.0-Linux-x86_64.sh
    
    # 也可以直接使用Bash进行安装
    bash Anaconda3-5.1.0-Linux-x86_64.sh
    

    然后按照提示敲回车键即可,同样注意要添加路径到环境变量

    在终端中键入:

    jupyter notebook
    

    即可打开Jupyter Notebook(Windows使用Windows+R组合键,键入cmd)。默认浏览器会自动打开,跳转到主页面,然后读者可以新建Python3 Jupyter笔记本进行学习和创作啦!

    Jupyter Notebook主页

    提示: 如果觉得官网下载过慢,可以使用百度云。链接:https://pan.baidu.com/s/16osMDSyqWeqigs0v1R1YRg 密码:jivn 如果百度云存储的版本过久,请提醒我进行更新

    推荐阅读

    如果大家对Anaconda及其安装、Jupyter Notebook不了解,可以阅读

    Anaconda介绍、安装及使用教程https://www.jianshu.com/p/62f155eb6ac5
    Jupyter Notebook介绍、安装及使用教程 https://www.jianshu.com/p/91365f343585

    nteract下载与安装

    同样地,在nteract官网https://nteract.io/下载系统对应软件版本,Windows、Mac与Linux上都可以直接点击安装。安装后直接点击软件图标打开:

    nteract界面

    点击上方菜单栏的“Runtime”,如果出现Python则说明可以使用了,左下方也会出现“Python 3”标记。如果没有,请检查你是否已经成功安装Anaconda,其他问题请在网上检索,或者留言、邮件咨询我。

    提示: 如果觉得官网下载过慢,可以使用百度云。链接:https://pan.baidu.com/s/1ykgw1ukd2IwQ4vELo5JDcw 密码:kgka 如果百度云存储的版本过久,请提醒我进行更新

    如果你已经成功配置好了软件,那么让我们正式迈出Python数据分析的第一步吧!


    第一章花了一周多的闲暇时间终于写完了,写的时候需要查询、准备和整合资料,这中间不可避免出现疏漏甚至错误,请大家原谅。也请大家在阅读的过程中多提意见,你的一点意见,都是这篇文章、这本书的一次优化。如果大家在学习的过程中出现问题或者遇到困难,欢迎随时留言或者邮件@我。

    相关文章

      网友评论

      本文标题:【基础篇】1-介绍与学习准备

      本文链接:https://www.haomeiwen.com/subject/jqflcftx.html