回顾
减少特征的数量
两种方法
特征选择
原因:部分特征相关度太高,部分特征对预测有影响
就是:特征太多,选少点
‘’‘python
from sklearn.feature_selection import VarianceThreshold
def vir():
“”"
过滤式:
特征选择,删除低方差的特征
“”"
var=VarianceThreshold(threshold=1.0)
data=var.fit_transform([[0,2,0,3],[0,1,4,3],[0,1,1,3]])
print(data)
if name == ‘main’:
vir()
‘’’
主成分分析
特征数量达到上百的时候----要不要用pca简化你的数据
(1)算法核心,
数据,处理
数据处理:
拿到数据后,分成训练集(75%),测试集(25%)
训练集------建立模型
测试集------评估模型
skelearn----数据集划分
sklearn.model_selection.train_test_split
sklearn分类数据集
sklearn.datasets.load_iris()
数据集的划分:
from sklearn.model_selection import train_test_split 导入划分数据集的包
‘’‘python
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
li=load_iris()
print(‘特征值’)
print(li.data)
print(‘目标值’)
print(li.target)
注意返回值有4个:训练集train 测试集 test
x_train, x_test, y_train, y_test = train_test_split(li.data, li.target, test_size=0.25)
print(“训练集特征值和目标值”,x_train,y_train )
print("-"*20)
print(‘测试集特征值和目标值’,x_test,y_test )
‘’’
用于分类大数据集
‘’‘python
from sklearn.datasets import load_iris,fetch_20newsgroups
from sklearn.model_selection import train_test_split
li=load_iris()
print(‘特征值’)
print(li.data)
print(‘目标值’)
print(li.target)
注意返回值有4个:训练集train 测试集 test
x_train, x_test, y_train, y_test = train_test_split(li.data, li.target, test_size=0.25)
print(“训练集特征值和目标值”,x_train,y_train )
print("-"*20)
print(‘测试集特征值和目标值’,x_test,y_test )
news= fetch_20newsgroups(subset=‘all’)
print(news.data)
print(news.target)
‘’’
回归特征集
‘’‘pyrthon
lb=load_boston()
print(‘特征值’)
print(lb.data)
print(‘目标值’)
print(lb.target)
‘’’
转换器,预估器
fit_transform(x)=
fit():输入数据,但不做事情—计算平均值,方差值等
+transfrom():进行数据的转换
估计器estimator
估计器的流程
1.调用fit(x_train,y_train)
2.1输入预测数据y_predict=(x_test,y_test)
2.2/预测的准确率:score(x_test,y_test)