我的代码-models
# coding: utf-8
# In[1]:
import pandas as pd
import numpy as np
from sklearn import tree
from sklearn.svm import SVC
from sklearn.grid_search import GridSearchCV
from sklearn.model_selection import train_test_split
from sklearn.metrics import classification_report, confusion_matrix
from sklearn.preprocessing import binarize
from sklearn.preprocessing import LabelEncoder
from sklearn.preprocessing import OneHotEncoder
from sklearn.preprocessing import Normalizer
from sklearn.metrics import f1_score
from sklearn.metrics import accuracy_score,recall_score,average_precision_score,auc
from imblearn.over_sampling import SMOTE
# In[37]:
data= pd.read_csv(r"D:\Users\sgg91044\Desktop\Copy of sampling.csv")
data.iloc[:,7:25] = data.iloc[:,7:25].apply(pd.to_numeric,errors='coerce')
data.Target = data.Target.astype("category")
for i in range(7,25):
med = np.median(data.iloc[:,i][data.iloc[:,i].isna() == False])
data.iloc[:,i] = data.iloc[:,i].fillna(med)
nz = Normalizer()
data.iloc[:,17:19]=pd.DataFrame(nz.fit_transform(data.iloc[:,17:19]),columns=data.iloc[:,17:19].columns)
data.iloc[:,7:10]=pd.DataFrame(nz.fit_transform(data.iloc[:,7:10]),columns=data.iloc[:,7:10].columns)
data.to_csv(r"D:\Users\sgg91044\Desktop\impution\AEM214_imputed_normalized.csv")
# In[2]:
data= pd.read_csv(r"D:\Users\sgg91044\Desktop\Copy of sampling.csv")
data.head()
# In[3]:
data.iloc[:,5:23] = data.iloc[:,5:23].apply(pd.to_numeric,errors='coerce')
data.Target = data.Target.astype("category")
# In[4]:
Y = data.Target
X = data.drop(columns='Target')
# In[5]:
X=X.drop(columns=['slotid','Recipe_Name','defect_count'])
# In[6]:
X
# In[7]:
X_train, X_test, y_train, y_test = train_test_split(
X, Y, test_size=0.2, random_state=0)
# In[8]:
sm = SMOTE(random_state=12, ratio = 1.0)
x_train_smote, y_train_smote = sm.fit_sample(X_train, y_train)
# In[9]:
print(y_train.value_counts(), np.bincount(y_train_smote))
# In[10]:
from sklearn.ensemble import RandomForestClassifier
# Make the random forest classifier
random_forest = RandomForestClassifier(n_estimators = 100, random_state = 50, verbose = 1, oob_score = True, n_jobs = -1)
# In[11]:
# Train on the training data
random_forest.fit(x_train_smote,y_train_smote)
# In[ ]:
# Make predictions on the test data
y_pred = random_forest.predict_proba(X_test)
# In[13]:
print(classification_report(y_pred=y_pred,y_true=y_test))
# In[14]:
f1_score(y_pred=y_pred,y_true=y_test)
# In[15]:
print("Accuracy of Random_forest:",round(accuracy_score(y_pred=y_pred,y_true=y_test) * 100,2),"%")
print("Sensitivity of Random_forest:",round(recall_score(y_pred=y_pred,y_true=y_test)*100,2),"%")
# In[16]:
print(confusion_matrix(y_pred=y_pred,y_true=y_test))
# In[21]:
svc=SVC(kernel='poly',degree=2,gamma=1,coef0=0)
# In[ ]:
svc.fit(x_train_smote,y_train_smote)
# In[ ]:
from sklearn.neural_network import MLPClassifier
mlp = MLPClassifier(activation='relu', solver='adam', alpha=0.0001)
# In[17]:
tuned_parameters = [{'kernel': ['rbf'], 'gamma': [1e-3, 1e-4],
'C': [1, 10, 100, 1000]},
{'kernel': ['linear'], 'C': [1, 10, 100, 1000]},
{'kernel':['poly'],'degree':[2,3,5]}]
clf = GridSearchCV(SVC(),param_grid=tuned_parameters,cv=3,scoring='recall',verbose=True)
clf.fit(x_train_smote,y_train_smote)
# In[18]:
data= pd.read_csv(r"D:\Users\sgg91044\Desktop\impution\sampling1.csv")
data.iloc[:,7:26] = data.iloc[:,7:26].apply(pd.to_numeric,errors='coerce')
data.Target = data.Target.astype("category")
data.eqpid = data.eqpid.astype("category")
Y = data.Target
X = data.drop(columns='Target')
X=X.drop(columns=['eqpid','lotid','Chamber','slotid','Step','Recipie_Name','defect_count'])
X_train, X_test, y_train, y_test = train_test_split(
X, Y, test_size=0.2, random_state=0)
sm = SMOTE(random_state=12, ratio = 1.0)
x_train_smote, y_train_smote = sm.fit_sample(X_train, y_train)
print(y_train.value_counts(), np.bincount(y_train_smote))
from sklearn.ensemble import RandomForestClassifier
# Make the random forest classifier
random_forest = RandomForestClassifier(n_estimators = 100, random_state = 50, verbose = 1, oob_score = True, n_jobs = -1)
# Train on the training data
random_forest.fit(x_train_smote,y_train_smote)
# In[19]:
# Make predictions on the test data
y_pred = random_forest.predict(X_test)
print(classification_report(y_pred=y_pred,y_true=y_test))
# In[20]:
print(confusion_matrix(y_pred=y_pred,y_true=y_test))
# In[21]:
f1_score(y_pred=y_pred,y_true=y_test)
# In[22]:
print("Accuracy of Random_forest:",round(accuracy_score(y_pred=y_pred,y_true=y_test) * 100,2),"%")
print("Sensitivity of Random_forest:",round(recall_score(y_pred=y_pred,y_true=y_test)*100,2),"%")
# In[71]:
data= pd.read_csv(r"D:\Users\sgg91044\Desktop\impution\sampling3.csv")
data.iloc[:,7:25] = data.iloc[:,7:25].apply(pd.to_numeric,errors='coerce')
data.Target = data.Target.astype("category")
Y = data.Target
X = data.drop(columns='Target')
X=X.drop(columns=['eqpid','lotid','Chamber','slotid','Step','Recipie_Name','defect_count'])
X_train, X_test, y_train, y_test = train_test_split(
X, Y, test_size=0.2, random_state=0)
sm = SMOTE(random_state=12, ratio = 1.0)
x_train_smote, y_train_smote = sm.fit_sample(X_train, y_train)
print(y_train.value_counts(), np.bincount(y_train_smote))
from sklearn.ensemble import RandomForestClassifier
# Make the random forest classifier
random_forest = RandomForestClassifier(n_estimators = 100, random_state = 50, verbose = 1, oob_score = True, n_jobs = -1)
# Train on the training data
random_forest.fit(x_train_smote,y_train_smote)
# In[72]:
# Make predictions on the test data
y_pred = random_forest.predict(X_test)
print(classification_report(y_pred=y_pred,y_true=y_test))
# In[53]:
f1_score(y_pred=y_pred,y_true=y_test)
# In[54]:
print("Accuracy of Random_forest:",round(accuracy_score(y_pred=y_pred,y_true=y_test) * 100,2),"%")
print("Sensitivity of Random_forest:",round(recall_score(y_pred=y_pred,y_true=y_test)*100,2),"%")
# In[55]:
data= pd.read_csv(r"D:\Users\sgg91044\Desktop\impution\sampling2.csv")
data.iloc[:,7:25] = data.iloc[:,7:25].apply(pd.to_numeric,errors='coerce')
data.Target = data.Target.astype("category")
Y = data.Target
X = data.drop(columns='Target')
X=X.drop(columns=['eqpid','lotid','Chamber','slotid','Step','Recipie_Name','defect_count'])
X_train, X_test, y_train, y_test = train_test_split(
X, Y, test_size=0.2, random_state=0)
sm = SMOTE(random_state=12, ratio = 1.0)
x_train_smote, y_train_smote = sm.fit_sample(X_train, y_train)
print(y_train.value_counts(), np.bincount(y_train_smote))
from sklearn.ensemble import RandomForestClassifier
# Make the random forest classifier
random_forest = RandomForestClassifier(n_estimators = 100, random_state = 50, verbose = 1, oob_score = True, n_jobs = -1)
# Train on the training data
random_forest.fit(x_train_smote,y_train_smote)
# In[57]:
# Make predictions on the test data
y_pred = random_forest.predict(X_test)
print(classification_report(y_pred=y_pred,y_true=y_test))
# In[58]:
f1_score(y_pred=y_pred,y_true=y_test)
# In[59]:
print("Accuracy of Random_forest:",round(accuracy_score(y_pred=y_pred,y_true=y_test) * 100,2),"%")
print("Sensitivity of Random_forest:",round(recall_score(y_pred=y_pred,y_true=y_test)*100,2),"%")
# In[ ]:
import flask
我的代码-models的更多相关文章
- 【Django】基于Django架构网站代码的目录结构
经典的Django项目源码目录结构 Django在一个项目的目录结构划分方面缺乏必要的规范.在Django的官方文档中并没有给出大型项目的代码建议目录结构,网上的文章也是根据项目的不同结构也有适当的 ...
- 使用 CodeIgniter 框架快速开发 PHP 应用(三)
原文:使用 CodeIgniter 框架快速开发 PHP 应用(三) 分析网站结构既然我们已经安装 CI ,我们开始了解它如何工作.读者已经知道 CI 实现了MVC式样. 通过对目录和文件的内容进行分 ...
- Django__RBAC
RBAC : 基于角色的权限访问控制(Role-Based Access Control) RBAC 模型作为目前最为广泛接受的权限模型 角色访问控制(RBAC)引入了Role的概念,目的是为了隔离U ...
- 用beego开发服务端应用
用beego开发服务端应用 说明 Quick Start 安装 创建应用 编译运行 打包发布 代码生成 开发文档 目录结构说明 使用配置文件 beego默认参数 路由设置 路由的表述方式 直接设置路由 ...
- 从零搭建基于golang的个人博客网站
原文链接 : http://www.bugclosed.com/post/14 从零搭建个人博客网站需要包括云服务器(虚拟主机),域名,程序环境,博客程序等方面.本博客 就是通过这几个环节建立起来的, ...
- Django——微信消息推送
前言 微信公众号的分类 微信消息推送 公众号 已认证公众号 服务号 已认证服务号 企业号 基于:微信认证服务号 主动推送微信消息. 前提:关注服务号 环境:沙箱环境 沙箱环境地址: https://m ...
- xadmin的使用
01-下载源码 GitHub地址:https://github.com/sshwsfc/xadmin # 安装xadmin 由于使用的是Django2.0的版本,所以需要安装xadmin项目djang ...
- python django基础一web框架的本质
web框架的本质就是一个socket服务端,而浏览器就是一个socker客户端,基于请求做出相应,客户端先请求,服务器做出对应响应 按照http协议的请求发送,服务器按照http协议来相应,这样的通信 ...
- Django之win7下安装与命令行工具
Django之win7下安装与命令行工具 下载安装 pip3 install django 注意:自动添加环境变量 测试是否安装成功 1.输入python 2.输入import django 3.输入 ...
随机推荐
- JDK1.7安装和配置及注意事项
要求 必备知识 windows 7 基本操作. 运行环境 windows 7 下载地址 环境下载 下载JDK 下载地址:http://www.oracle.com/technetwork/java/j ...
- AjaxPro对象参数传递
1.客户端配置 2.服务端注册,配置 对象参数用到的方法 3.Web.config文件配置 需要注意的是ajax以及ajaxpro调用的方法必须是静态方法,如果存在非静态方法可以从页面作为参数传递
- 搭建Elasticsearch平台
https://cloud.tencent.com/developer/article/1189282 https://blog.csdn.net/qq_34021712/article/detail ...
- 微信小程序实现部分双向数据绑定(为input、picker、textarea编写统一的更新数据逻辑)
wepy开发小程序 以input为例,微信小程序没有数据双向绑定,input要显示绑定的数据即value等于一个绑定的量 <input type="text" value=& ...
- TCP协议三次握手、四次挥手
TCP的概述 TCP 把连接作为最基本的对象,每一条 TCP 连接都有两个端点,这种断点我们叫作套接字(socket),它的定义为端口号拼接到 IP 地址即构成了套接字,例如,若 IP 地址为 192 ...
- Centos-6.5搭建oracle11g RAC集群
一.基本概念 RAC( Real Application Clusters-----真正的应用集群) RAC数据库是Oracle公司数据库的集群解决方案.高可用性解决方案.两个或多个服务器之间通过一个 ...
- QT 设置应用程序名称和主窗口标题
1.设置应用程序名称 在工程文件.pro文件中,修改Target为想设置的名称 TARGET = MXEditer 2.设置主窗口标题,在main文件中,我的主窗口是MainWindow. int m ...
- 获取动态代理生成的.class文件
生成代理类,并写入硬盘:配置系统属性sun.misc.ProxyGenerator.saveGeneratedFile为true,代理类生成时将自动将生成的代理类写入硬盘 ? 1 2 3 4 5 6 ...
- flask请求上下文
先看一个例子: #!/usr/bin/env python # -*- coding:utf-8 -*- import threading # local_values = threading.loc ...
- bzoj3884 上帝的集合
根据一些书上的记载,上帝的一次失败的创世经历是这样的: 第一天, 上帝创造了一个世界的基本元素,称做“元”. 第二天, 上帝创造了一个新的元素,称作“α α ”.“α α 被定义为“元”构成的集合.容 ...