关于决策数的示例

# -*- coding: utf-8 -*-
"""
Created on Tue Aug 09 16:15:03 2016

@author: Administrator
"""

import numpy as np
import pandas as pd
from sklearn.tree import DecisionTreeClassifier
from sklearn.cross_validation import train_test_split
from sklearn.metrics import classification_report
from sklearn.pipeline import Pipeline
from sklearn.grid_search import GridSearchCV

if __name__ == ‘__main__‘:
    ‘‘‘
    df = pd.read_csv(‘ad.data‘, header=None)
    explanatory_variable_columns = set(df.columns.values)
    response_variable_column = df[len(df.columns.values)-1]
    # The last column describes the targets
    explanatory_variable_columns.remove(len(df.columns.values)-1)
    y = [1 if e == ‘ad.‘ else 0 for e in response_variable_column]
    X = df[list(explanatory_variable_columns)]
    X.replace(to_replace=‘ *\?‘, value=-1, regex=True, inplace=True)
 ‘‘‘
    X = np.array([[0,0,0,0],
                  [0,0,0,1],
                  [0,0,1,0],
                  [0,0,1,1],
                  [0,1,0,0],
                  [0,1,0,1],
                  [0,1,1,0],
                  [0,1,1,1],
                  [1,0,0,0],
                  [1,0,0,1],
                  [1,0,1,0],
                  [1,0,1,1],
                  [1,1,0,0],
                  [1,1,0,1],
                  [1,1,1,0],
                  [1,1,1,1]])
    y = np.array([0,1,1,0,2,1,0,0,0,2,1,0,2,1,0,0]) #就要是一行向量(如果是多行,会报错)

    X_train, X_test, y_train, y_test = train_test_split(X, y)
    pipeline = Pipeline([
    (‘clf‘, DecisionTreeClassifier(criterion=‘entropy‘))
    ])
    parameters = {
    ‘clf__max_depth‘: (150, 155, 160),
    ‘clf__min_samples_split‘: (1, 2, 3),
    ‘clf__min_samples_leaf‘: (1, 2, 3)
    }

    grid_search = GridSearchCV(pipeline, parameters, n_jobs=-1,verbose=1, scoring=‘f1‘)
    grid_search.fit(X_train, y_train)
    print ‘Best score: %0.3f‘ % grid_search.best_score_
    print ‘Best parameters set:‘
    best_parameters = grid_search.best_estimator_.get_params()
    for param_name in sorted(parameters.keys()):
        print ‘\t%s: %r‘ % (param_name, best_parameters[param_name])
    predictions = grid_search.predict(X_test)
    print classification_report(y_test, predictions)
时间: 2024-12-29 09:04:17

关于决策数的示例的相关文章

润乾集算报表利用并行计算提高JDBC取数性能示例

实际应用中数据量较大的报表在展现或导出时往往需要一次性将数据从数据库中取出来,而JDBC的取数速度过慢使得整个进程效率极低.如何优化取数速度成为了提升报表性能的关键.在润乾集算报表中可以通过并行计算提高JDBC的取数性能.本文以oracle为例说明实现过程. 报表描述 用户状态表展现的是明细数据,由于需要导出,需要一次性读取数据表中所有数据.单表数据量为360万,报表样式为: 实现步骤 编写脚本 首先使用集算器编写脚本(parallel.dfx),实现并行取数逻辑: A1:连接oracle数据源

hdu--4504--又是dp啊<方案决策数>

其实 这题 有点类似 以前做过的一题 hdu的1028 就是给你一个数n 然后让你求出能满足等于它的加法等式 也是个dp[x][y]的状态 这边的话 就是dp[x][y]表示打到第x次进攻的时候 我得到了y分的进攻策略有多少种 然后转移方程 不难dp[i][j] += dp[i-1][j-1]     dp[i][j]+= dp[i-1][j-2]  dp[i][j] += dp[i-1][j-3] 然后就是对于进攻0次 进行下特判就好.. 哎 去找班主任请假了 -.- 1 #include <

决策数题目(是否适合打网球)简单学习-手算

题目: 大致结果手绘图: 详细计算过程: 一级筛选: 一级筛选 1.天气 from math import* sum = -(9/14) * log(9/14,2) - (5/14) * log(5/14,2) a = 5/14*(-(2/5) * log(2/5,2) - (3/5) * log(3/5,2))#晴 b = 4/14*(-1 * log(1,2))#阴 c = 5/14*(-(3/5) * log(3/5,2) - (2/5) * log(2/5,2))#雨 sum1 = a

js与xml交互理论和示例

---------------------------------------------------js+xml--------------------------------------------------------------------------- DOM2级在 document.implementation 中引入了 createDocument() 方法. IE9+. Firefox. Opera. Chrome 和 Safari 都支持这个方法. 想一想, 或许你还记得可以

给定一个整数N,找出一个比N大且最接近N,但二进制权值与该整数相同 的数

1,问题描述 给定一个整数N,该整数的二进制权值定义如下:将该整数N转化成二进制表示法,其中 1 的个数即为它的二进制权值. 比如:十进制数1717 的二进制表示为:0000 0110 1011 0101 故它的二进制权值为7(二进制表示中有7个1) 现在要求一个比N大,且最靠近N的数,且这个数的二进制权值与N相同.(这里不考虑Integer.MAX_VALUE 和负数情形.) 对于有符号的32位整数而言:它们的补码如下: Integer.MAX_VALUE= 0111 1111 1111 11

转载:scikit-learn学习之决策树算法

版权声明:<—— 本文为作者呕心沥血打造,若要转载,请注明出处@http://blog.csdn.net/gamer_gyt <—— 目录(?)[+] ====================================================================== 本系列博客主要参考 Scikit-Learn 官方网站上的每一个算法进行,并进行部分翻译,如有错误,请大家指正    ===========================================

二维数组、集合示例及练习

二位数组的创建.赋值.提取示例: 二维数组练习:语文数学外语共三门课的成绩,共九个人,输入到一个二维数组中 定义集合并添加数据示例: 移除数据示例: 移除数据索引为某数的示例: 计算数据中共有几组数据示例: 集合的练习: 练习一:输入人数,录入分数,存到集合里面,之后再读取出来,求平均分 练习二:输入人数,输入每一个人的分数,求平均分,并排序,升序 练习三:输入人数,输入每一个人的分数,求平均分,排列为降序 集合的语句示例: 示例一:清空集合中所有数据 示例二:查看集合中第一个为12的数据的索引

C# 存储过程返回影响行数

存储过程中完成更新操作后,使用@@rowcount返回影响行数.如果有多条语句,可定义变量保存影响行数.示例如下 ALTER PROCEDURE [dbo].[P_CSM_UpdateHandleResultEmpName] @HandleIndex int=-1 AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT

决策树算法(一)——一些重要的数学概念

写在前面的话 趁着现在我还是高中数理化老师,偶尔兼职英语老师的时候赶紧抓紧时间写点有关计算机科学技术的东西.一来是表示我对计算机的热爱,二来,当然是最重要的咯,满足一下我强大的虚荣心.哈哈哈哈!想想高中数学物理化学老师在折腾计算机,是不是有种瞬间吊炸天的感觉. 这个系列我写了一个月了,之后会陆陆续续的放出来的.希望对大家有一点点帮助.如果您没有看懂我在写啥,那一定是我错了,讲的不够清楚.世界上没有什么知识点是难的,只是看你知识储备和理解力达到了相应的水平没有.至少我是这么认为的. 当然,您要是觉