机器学习基础2-安装环境
2.1、常用环境
-
科学计算支持库Numpy
专门设计用于科学计算的专业支持库
-
机器学习库 Scikit-learn
-
数据处理库 Pandas
内置许多排序,统计之类的实用功能
2.2、Python
Python是一种动态的高级编程语言,Python代码是通过解释器解释执行。Python数据类型不用事先声明,语法更为灵活多变,代码看起来也更简洁,高效快速是Python引以为傲的特点。
2.2.1、基本用法
Python库安装工具Pip和Conda。如果成功安装Python后,就能在命令行中直接使用Pip命令了,而Conda则需要额外进行安装才能使用,Conda功能更为强大
pip install 库名
# 使用国内源加速下载
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 库名
# 或者
conda 库名
使用库方面,Python也和其他编程语言一样,需要先导入再使用
import 库名
# 或者
import 库名 as 别名
# 使用库中的类
from 库名 import 类名
2.3、Numpy简介
Numpy是Python语言的科学计算支持库,提供了线性代数,傅里叶变换等非常有用的数学工具。
pip install -U numpy
Numpy拥有强大的科学计算功能,Array数据类型是Numpy的核心数据结构,与Python的List类型相似,但功能强大的多。Numpy相关功能都是围绕着Array类型建设的。
# 使用Numpy包只需要导入即可,业界习惯用np作为它的别名
import numpy as np
方法名称 | 类别 | 功能说明 |
---|---|---|
array | 数据创建 | 创建Array类型数据 |
zeros | 数据创建 | 创建值为0的Array类型数据 |
ones | 数据创建 | 创建值为1的Array类型数据 |
eye | 数据创建 | 创建单位矩阵 |
arange | 数据创建 | 类似内置函数range,生成等差数值 |
linspace | 数据创建 | 生成可指定是否包含终值的等差数值 |
random.rand | 数据创建 | 随机生成数值 |
T | 数据创建 | 转置操作 |
reshape | 数据操作 | 不改变原数据的维度变换 |
resize | 数据操作 | 修改原数据的维度变换 |
mean | 统计操作 | 取均值 |
sum | 统计操作 | 求和 |
max | 统计操作 | 取最大值 |
min | 统计操作 | 取最小值 |
var | 统计操作 | 求方差 |
std | 统计操作 | 求标准差 |
corrcoef | 统计操作 | 计算相关系数 |
append | 数据操作 | 新增 |
insert | 数据操作 | 插入 |
delete | 数据操作 | 删除 |
concatenate | 数据操作 | 按行(列)连接数据表 |
add | 数学运算 | 标(向)量加法 |
subtract | 数学运算 | 标(向)量减法 |
multiply | 数学运算 | 标(向)量乘法 |
divide | 数学运算 | 标(向)量除法 |
exp | 数学运算 | 以e为底的指数运算 |
log | 数学运算 | 以e为底的对数运算 |
dot | 数学运算 | 点乘 |
2.3、Scikit-Learn
Scikit-learn库包含了常见的机器学习算法,而且还在不断更新。
scikit-learn库对机器学习算法进行封装,使用过程非常简单,只要根据格式填入数据即可,不涉及额外的数学运算操作。
pip install -U scikit-learn
# 使用scikit-learn
import sklearn
调用机器学习算法也非常简单,Scikit-learn库已经将算法按模型分类,查找起来非常方便。如线性回归算法可以从线性模型中找到
from sklearn import linear-model
model = linear_model.LinearRegression()
Logistic回归算法也是依据线性模型
from sklearn.linear_model imort LogisticRegression
model = linear_model.logisticRegression()
类似的还有基于近邻模型的KNN算法
生成模型后,一般使用fit方法给模型"喂"数据进行训练。完成训练的模型可以使用predict方法进行预测。
2.4、Pandas简介
Pandas是Python语言中知名的数据处理库。但是从生产环境上得到的数据需要首先进行数据清洗工作,最常见的如填充丢失字段值。数据清洗工作一般由Pandas来完成,特征工程也可通过Pandas完成。
2.4.1、安装
pip install -U pandas
2.4.2、Pandas基本用法
Pandas具有两个核心的数据类型,即Series和DataFrame
-
Series
一维数据,可以认为是一个统计功能增强版的List功能
-
DataFrame
多维数据,有多个Series组成
业界习惯在导入时,使用'pd'作为他的别名
import pandas as pd
方法名称 | 类别 | 功能说明 |
---|---|---|
read_csv | 读取数据 | 从CSV格式文件中读取数据 |
read_excel | 读取数据 | 从电子表格中读取数据 |
read_json | 读取数据 | 从json格式中读取数据 |
read_clipboard | 读取数据 | 从剪切板读取数据 |
to_csv | 写入数据 | 将数据写入csv格式文件 |
to_excel | 写入数据 | 将数据写入电子表格 |
to_json | 写入数据 | 将数据写入json表格 |
to_clipboard | 写入数据 | 将数据写入粘贴板 |
Series | 创建数据 | 创建Series类型数据 |
DataFrame | 创建数据 | 创建DataFrame类型数据 |
head | 信息查看 | 从头开始查看N位数据 |
tail | 信息查看 | 从末尾开始查看N位数据 |
shape | 信息查看 | 行列数信息 |
dropna | 数据操作 | 删除空值 |
fillna | 数据操作 | 填充空值 |
sort_values | 数据操作 | 正(逆)序排序 |
append | 数据操作 | 横向(按行)连接两个数据表 |
concat | 数据操作 | 纵向(按列)连接两个数据表 |
value_counts | 统计操作 | 值计数 |
describe | 统计操作 | 总体概况信息 |
info | 统计操作 | 数据类型统计 |
mean | 统计操作 | 取均值 |
corr | 统计操作 | 计算相关系数 |
count | 统计操作 | 非空值计数 |
max | 统计操作 | 取最大值 |
min | 统计操作 | 取最小值 |
median | 统计操作 | 计算中位数 |
std | 统计操作 | 计算标准差 |