在学习scikit-learn以前容我作一点介绍python
scikit-learn(http://scikit-learn. org/stable/documentation(在这个网页上能够看到每一个算法的详细文档 )) 算法
是一个开源的项目 ,里面包含了目前最早进的机器学习算法 数据库
若是你想使用或者是学习这个框架的话
编程
请你下载Anaconda(www.anaconda.com/)数组
Anaconda 是用于大规模数据处理、预测分析和科学计算的 Python 发行版。
浏览器
Anaconda 已经预先安装 好 NumPy、SciPy、matplotlib、pandas、IPython、Jupyter Notebook 和 scikit-learn。
bash
因此你能够直接下载使用。数据结构
打开以后咱们能够看到界面上面有不少的集成的工具框架
Jupyter Notebook 是能够在浏览器中运行代码的交互环境。
机器学习
简单的说就是一个编译器
打开以后的界面 (这个是你本地文件)
若是你想改变编辑器读取你的本地文件位置的话能够用下面的办法
blog.csdn.net/slz0813/art…(更改jupyter-notebook默认workspace目录 )
下面就开始让咱们建立第一个程序吧!
建立第一个程序
NumPy 是 Python 科学计算的基础包之一。它的功能包括多维数组、高级数学函数(好比 线性代数运算和傅里叶变换),以及伪随机数生成器。
SciPy 是 Python 中用于科学计算的函数集合。它具备线性代数高级程序、数学函数优化、 信号处理、特殊数学函数和统计分布等多项功能。
matplotlib 是 Python 主要的科学绘图库,其功能为生成可发布的可视化内容,如折 线图、直方图、散点图等。将数据及各类分析可视化,可让你产生深入的理解。
pandas 是用于处理和分析数据的 Python 库。它基于一种叫做 DataFrame 的数据结构,这 种数据结构模仿了R 语言中的DataFrame。简单来讲,一个pandas DataFrame 是一张表 格,相似于Excel 表格。pandas 中包含大量用于修改表格和操做表格的方法,尤为是可 以像SQL 同样对表格进行查询和链接。
看到上面的内容以为仍是看不懂这个是在说什么的话,请看看补充内容。
NumPy、SciPy、matplotlib、pandas、IPython、Jupyter Notebook 和 scikit-learn做为python重要的库,下面对各个各个库进行详细的解释,这样方便理解记忆。
除了为Python提供快速的数组处理能力,NumPy在数据分析方面还有另一个主要做用,即做为在算法和库之间传递数据的容器。对于数值型数据,NumPy数组在存储和处理数据时要比内置的Python数据结构高效得多。此外,由低级语言(好比C 和Fortran)编写的库能够直接操做NumPy数组中的数据,无需进行任何数据复制工做。所以,许多Python的数值计算工具要么使用NumPy数组做为主要的数据结构,要么能够与NumPy进行无缝交互操做。
参考书籍:利用Python进行数据分析复制代码
它提供了如下功能(不限于此):
pandas兼具NumPy高性能的数组计算功能以及电子表格和关系型数据库(如 SQL)灵活的数据处理功能。它提供了复杂精细的索引功能,能更加便捷地完成重 塑、切片和切块、聚合以及选取数据子集等操做。
参考数据:利用Python进行数据分析复制代码
matplotlib是最流行的用于绘制图表和其它二维数据可视化的Python库。它最初由 John D.Hunter(JDH)建立,目前由一个庞大的开发团队维护。它很是适合建立出 版物上用的图表。
它提供了如下功能(不限于此):
Scikit-learn(之前称为scikits.learn)是一个用于Python编程语言的免费软件机器学习库。 它具备各类分类,回归和聚类算法,包括支持向量机,随机森林,梯度加强,k -means和DBSCAN,旨在与Python数值和科学库NumPy和SciPy互操做。
它的子模块包括: