首页 > 其他分享 >openfe的使用

openfe的使用

时间:2022-12-10 19:13:51浏览次数:24  
标签:openfe feature train pd 使用 test import out

直接把数据丢里提升效果不太大。。。。。。。他会生成很多特征导致计算机运算需要很长时间,因此不建议放入较大的特征维度,需要自己选择一下。 import pandas as pd from sklearn.datasets import fetch_california_housing from openfe import openfe, transform, tree_to_formula from sklearn.model_selection import train_test_split import lightgbm as lgb from sklearn.metrics import mean_squared_error from sklearn.model_selection import cross_val_score from sklearn import tree import warnings warnings.filterwarnings("ignore") def get_score(train_x, test_x, train_y, test_y):     train_x, val_x, train_y, val_y = train_test_split(train_x, train_y, test_size=0.2, random_state=1)     params = {'n_estimators': 1000, 'n_jobs': n_jobs, 'seed': 1}     gbm = lgb.LGBMRegressor(**params)     gbm.fit(train_x, train_y, eval_set=[(val_x, val_y)], callbacks=[lgb.early_stopping(50, verbose=False)])     pred = pd.DataFrame(gbm.predict(test_x), index=test_x.index)     score = mean_squared_error(test_y, pred)     return score import numpy as np import warnings if __name__ == '__main__':     df = pd.read_csv('train.csv')     df=df.drop(['ID'],axis=1)     df=df.to_numpy()     feature=np.abs(np.fft.fft(df[:,:-1]))     feature=np.concatenate((feature,np.reshape(df[:,-1],(-1,1))),axis=1)     train=pd.DataFrame(feature)     heat=train.corr()     fe=heat.index[abs(heat[240])>0.3]     train=df[:,fe]     label=train[:,-1]     train=train[:,:-1]     # feature generation     ofe = openfe()     w=[]     for i in range(train.shape[1]):         s='T'         w.append(s+str(i))     train=pd.DataFrame(train)       train.columns=w         df1 = pd.read_csv('test.csv')     df1=df1.drop(['ID'],axis=1)     df1=df1.to_numpy()     test_feature=np.abs(np.fft.fft(df1[:,:]))     test_feature=test_feature[:,fe[:-1]]     features = ofe.fit(data=pd.DataFrame(train),task='classification', label=pd.DataFrame(label), n_jobs=3, stage1_metric='corr',stage2_metric='permutation')     test_fe=pd.DataFrame(test_feature)     test_fe.columns=w     train_x, test_x = transform(train, test_fe, ofe.new_features_list[:10], n_jobs=3)     print(train_x.shape)     print(train.shape)     for i in range(10):         clf=tree.DecisionTreeClassifier(criterion='gini',random_state=0,max_depth=i+1)         clf1=tree.DecisionTreeClassifier(criterion='gini',random_state=0,max_depth=i+1)         scores = cross_val_score(clf, train, label, cv=5)         scores1 = cross_val_score(clf1, train_x, label, cv=5)         print(i,scores.mean(),scores1.mean())         print("The top 10 generated features are")
    clf1=tree.DecisionTreeClassifier(criterion='gini',random_state=0,max_depth=3+1)     clf1.fit(train_x,label)     out=clf1.predict(train_x)     print(out)     out=clf1.predict(test_x)     print(out)     out=pd.DataFrame(out)     out.columns = ['CLASS']     w=[]     for k in range(out.shape[0]):         w.append(k+210)     out['ID']=np.reshape(w,(-1,1))     out[['ID','CLASS']].to_csv('out3.csv',index=False)

标签:openfe,feature,train,pd,使用,test,import,out
From: https://www.cnblogs.com/hahaah/p/16972101.html

相关文章

  • Scrapy入门使用
    1.scrapy入门使用学习目标:掌握scrapy的安装应用创建scrapy的项目应用创建scrapy爬虫应用运行scrapy爬虫应用scrapy定位以及提取数据或属性值的方法掌握respo......
  • Angular 应用开发里使用 ForRoot 解决 Lazy Loaded Module 里单例行为丢失的问题
    笔者在Angular实际项目开发中曾经遇到这样一个需求:我们想创建一个共享模块,它将包含一个配置来设置布尔值(作为标志)以启用或禁用其他模块的某些功能。其他模块可以在An......
  • 如何使用Java获取货币符号?
    1.前言最近做了一个支付相关的需求,要求在收银台页面显示商品的价格时带上货币符号¥,类似下图中的格式:最初我是用的下面这样的代码:System.out.println(Currency.getInsta......
  • Tomcat使用介绍
    一、tomcat介绍Tomcat服务器是一个免费的开放源代码的轻量级Web应用服务器,如apache处理静态HTML能力突出不同,tomcat处理动态HTML能力相当强大,因此一般项目都是部署apache......
  • 如何使用Github创建一个仓库
    创建仓库(对我来说,这是新建)点击这里的Createrepository:进入到这样一个界面:其中,Repositoryname,是我们即将创建完成的仓库名称;而这里:需要填写的是对仓库的相关描述,当然......
  • uni-app,华为审核提示APP首次打开或运行中,未见使用权限对应的相关功能或服务时,不应提
    1.在hbuider中找到源码视图   2.相关代码 3.手动添加权限例如:     原文链接:https://blog.csdn.net/weixin_57844432/article/details/127362466......
  • 使用JavaWeb进行增删改查操作
    一、基本环境准备1、配置pop.xmlpop文件可以直接复制使用不作修改,也可以根据自己的需求进行增删依赖和插件 1<?xmlversion="1.0"encoding="UTF-8"?>2<project......
  • LVM-VDO使用(官方手册,针对centos8或redhat8)
    官方参考文档https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/8/html/deduplicating_and_compressing_logical_volumes_on_rhel/index参考官方......
  • 码云的使用
    1.注册登录码云,完善个人信息2.设置本机绑定SSH公钥,实现免密码登录   在本地的用户目录下的本机找到.ssh文件没有就创建,进去进入git命令输入:ssh-keygen-trsa......
  • 我这有个数据集,向取出每天每个国家确诊数量前30的数据,使用Pandas如何实现?
    大家好,我是皮皮。一、前言前几天在Python最强王者交流群【此类生物】问了一个​​Pandas​​处理的问题,提问截图如下:部分数据截图如下所示:二、实现过程这里【隔壁......