博文配套视频课程:24小时实现从零到AI人工智能
sklearn库简介
Scikit learn 也简称 sklearn, 是机器学习领域当中最知名的 python 模块之一
- Classification 分类
- Regression 回归
- Clustering 非监督分类
- Dimensionality reduction 数据降维
- Model Selection 模型选择
- Preprocessing 数据预处理
Sklearn体系结构
- 分类和回归是监督式学习,即每个数据对应一个 label。
- 聚类 是非监督式学习,即没有 label。
- 另外一类是 降维,当数据集有很多很多属性的时候,可以通过 降维 算法把属性归纳起来。例如 20 个属性只变成 2 个,注意,这不是挑出 2 个,而是压缩成为 2 个,它们集合了 20 个属性的所有特征,相当于把重要的信息提取的更好,不重要的信息就不要了。
加载数据
通过pandas可以很方便加载csv,excel,sql,html,json中的数据,加载成功默认保存为DataFrame对象。
import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_absolute_error
# 1: 数据的加载
data = pd.read_csv("../data/house.csv")
data.info()
print(data.head(n=3))
区分测试集训练集
y = data['price'] # 目标值(标准答案)
# axis=0 代表的是行, 1代表的是列
X = data.drop(['price','row_id'],axis=1) # 特征值
# 4:数据拆分成训练集和测试集
# X_train: 特征值的训练集 y_train: 目标值的训练集
# X_test:测试集的特征值 y_test: 测试集的目标值
X_train, X_test, y_train, y_test = train_test_split(X,y,test_size=0.25,random_state=1)