在处理分类任务时,需要构建一个合适的分类器,而如何确定一个合适的分类器是比较耗时耗力的过程。这里从sklearn的官方文档获得启发,快速遍历不同的分类器进行分类任务,并进行评价得分和可视化展示。
主要内容
代码的工作主要对一类高维数据进行了降维(降至2维),对2维数据进行了简单的无监督聚类分析,得到不同的多分类标签(2,3,4,5)。随后,我们认为四种分类标签都是正确的,开始为四种标签分别使用SVC分类器进行分类,最终基于SVC分类器的分类情况进行评分和决策边界划分。
数据
原始的data读取的所有内容(前5行)如上图所示。
代码
更多的内容,将在代码块及代码块的注释中进行展示。
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
data= pd.read_excel("D:\\C题\\附件.xlsx", sheet_name='表单2')
data.fillna(value=0, inplace=True) #填充空值
from sklearn.decomposition import FactorAnalysis as fac #借助FAC进行简单降维
fac = fac(n_components=2, tol = 0.85) #设置fac的降维结果返回2维
x_dimension = fac.fit_transform(X = data.iloc[:,1:]) #让fac模型拟合并转换数据中的高维特征
data['fac1'] = x_dimension[:,0] #两个因子分别命名和储存到data中
data['fac2'] = x_dimension[:,1]
from sklearn.cluster import KMeans #引入无监督聚类算法
fig, sub = plt.subplots(4,4,dpi = 300, figsize = (10,9))#将无监督聚类的散点进行可视化
plt.subplots_adjust(wspace