利用python的mlxtend实现简单的集成分类器

实验环境

python 3.7.1+Anaconda 1.9.7+pycharm 2019.1

主要pkg

pandas、numpy、sklearn、mlxtend

数据格式

Label:
label
features:
features

主要实验步骤

  • 数据读入
  • 数据处理
  • 数据集划分
  • stacking分类器定义
  • 模型训练
  • 准确度预测

具体过程

首先利用pandas的read_系列函数读入数据,我用的是read_excel,(很奇怪,不知道为什么用read_csv就会一直读入失败,,
然后,
千万要注意,要处理好数据中的字符串!否则后面fit是要报错的!!!,比如:
read_excel函数会默认将第一剔除掉,如果不想剔除的话加一句header=None就可以了;
字符串列也要删除或映射;
续上,label中的字符串都要映射成对应的数值,可以采用简单的序号自增;
关于映射,有些包的分类器会将非数值类型自动映射的,但有的就不能,比如这里使用的stackingclassifier

#数据读入
df= pd.read_excel("单细胞测序数据Labels.csv",header=None)#read_csv就是不好用啊
label=df.values.tolist()
tmp = []        #去掉小列表
for i in label:
    tmp.append(i[0])#此处是为了将[[a],[b]]这种嵌套列表变成[a,b]
label = tmp

df= pd.read_excel("单细胞测序数据.csv")
feature=df.values.tolist()
for i in feature:#这里是要删除非数字的列,对应数据中的第一列
    del i[0]
#label映射
tmp = 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值