数据分析(一)——搭建Python平台

考虑的问题

  • 操作系统

    选择操作系统的问题,主要是Windows和Linux之间选择

    。Python是跨平台的语言,因此脚本可以跨平台运行。

    • 不同的平台运行效率不一样,一般来说,在Linux下的运行速度比Windows快,而且是对于数据分析和挖掘任务。此外,
    • 在Linux下搭建Python环境相对来说容易一些,很多Linux发行版自带了Python程序,并且在Linux下更容易解决第三方库的依赖问题。当然,
    • Linux的操作门槛较高,可以先在Windows环境下熟悉,然后再考虑迁移到Linux环境中。
  • Python版本 python 3.x是对python2.x一个较大的更新,并且越来越多的主流库已经开始支持3.x版本。

基础平台的搭建

Python核心程序的安装,分为Windows和Linux介绍:最后介绍一个Python的科学计算发行版——Anaconda。

  • Windows 在Windows系统中安装Python比较容易,直接到官方网站下载相应的msi安装包安装即可,和一般软件安装无异。
  • Linux 大多数Linux发行版,如CentOS、Debian、Ubuntu等。
  • Anaconda Anaconda集成一些第三方扩展库,一个常用的科学计算发行版,避免安装一些第三库插件出错。Anaconda的特点如下:
  • 包含了众多流行的科学、数学、工程、数据分析的Python包。
  • 完全开源和免费。
  • 额外的加速、优化是收费的,但对于学术用途可以申请免费的License。
  • 全平台支持:Linux、Windows、Mac。 因此,推荐安装此Python发行版。

第三方库的安装

Python自带了很多库,但不一定可以满足我们的需求。就数据分析和数据挖掘而言,还需要添加一些第三方的库来扩展它的功能。

img

Python数据分析工具

Python数据挖掘相关扩展库

data_analysis_python_table2

相关扩展库简介

Numpy Python并没有提供数组功能。虽然列表可以完成基本的数组功能,但它不是真正的数组,而且在数据量较大时,使用列表的速度就会慢得让人难以接受。为此,Numpy提供了真正的数组功能,以及对数据进行快速处理的函数。值得强调的是,Numpy内置函数处理数据的速度时C语言级别的,因此在编写程序的时候,应当尽量使用它们内置的函数,避免出现效率瓶颈的现象(尤其时涉及循环的问题)。

参考链接:

Pandas-1 Pandas是Python下最强大的数据分析和探索工具。它包含高级的数据结构和精确的工具,使得在Python中处理数据非常快速和简单。Pandas构建在Numpy之上,它使得以Numpy为中心的应用很容易使用。

Pandas的功能非常强大:

  • 支持类似于SQL的数据增、删、查、改,并且带有丰富的数据处理函数
  • 支持时间序列分析功能
  • 支持灵活处理缺失数据

参考链接

data_analysis_python_Pandas-1

Pandas-2

data_analysis_python_Pandas-2

Pandas-3

data_analysis_python_Pandas-3

Keras 虽然Scikit-learn足够强大,但是它并没有包含一种强大的模型——人工神经网络。人工神经网络是功能强大的、但是原理相当简单的模型,在语言处理、图像识别等领域有着重要的作用。“深度学习”算法,本质也就是一种神经网络。

Keras库来搭建神经网络。事实上,Keras并非简单的神经网络库,而是基于Theano的强大的深度学习库,利用它不仅仅可以搭建普通的神经网络,还可以搭建各种深度学习模型,如自编码器、循环神经网络、递归神经网络、卷积神经网络等。由于它是基于Theano的,因此速度也相当快。

参考链接:

data_analysis_python_Keras

Matplotlib 无论是数据挖掘还是数据挖掘,都免不了数据可视化的问题。对于Python来说,Matplotlib是最著名的绘图库,它主要用于二维绘图,当然它也可以进行简单的三维绘图。

参考链接:

data_analysis_python_Matplotlib

Scikit Learn 一个机器学习相关的库,scikit-learn是Python下强大的机器学习库学习工具包,它提供了完善的机器学习工具箱,包括数据预处理、分类、回归、聚类、预测和模型分析等。

Scikit-learn依赖于Numpy、Scipy和Matplotlib,因此,需要提前安装好这几个库,然后安装Scikit-learn基本没有什么问题。

参考链接:

img

Scipy

img