亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? form1.cs.txt

?? 基于決策樹和貝葉斯的預測分析器
?? TXT
?? 第 1 頁 / 共 5 頁
字號:
                    splitting_criterion.attribute = (string)attribute_list[0];
                    for (int i = 0; i < attribute_list.Count; i++)
                    {
                        string a = (string)attribute_list[i];
                        double temp = 1;
                        switch (a)
                        {
                            case "age":
                                temp = Infoage(d);
                                break;
                            case "education":
                                temp = Infoeducation(d);
                                break;
                            case "occupation":
                                temp = Infooccupation(d);
                                break;
                            case "sex":
                                temp = Infosex(d);
                                break;
                            case "native_country":
                                temp = Infonative_country(d);
                                break;
                            default:
                                MessageBox.Show("error");
                                break;
                        }
                        if (temp < infoA)
                        {
                            splitting_criterion.attribute = a;
                            infoA = temp;
                        }
                        
                    }



                    //計算splitting_criterion
                    {
                        string[] type = Enum.GetNames(GetEnumType(splitting_criterion.attribute));
                        for (int i = 0; i < type.Length; i++)
                        {
                            ArrayList Dj = CopySmallCollection(d, splitting_criterion.attribute, type[i]);
                            splitting_criterion.descriptionList.Add(type[i]);
                            splitting_criterion.splitList.Add(Dj);
                        }
                    }
                    return splitting_criterion;

                case attributeSelectionMethodType.GainRate:
                    //double splitInfo;          //平均增益
                    double splitInfoA;         //按A劃分的信息增益
                    double gainA;               //信息增益
                    double gainRatioA;          //信息增益率


                    //計算splitInfo
                    /*
                    splitInfo = SplitInfo(D);
                    */

                    //計算最大的gainRatioA和選擇的屬性
                    {
                        gainRatioA = 0;
                        splitting_criterion.attribute = (string)attribute_list[0];
                        for (int i = 0; i < attribute_list.Count; i++)
                        {
                            string a = (string)attribute_list[i];
                            double temp = 0;
                            //計算gainA
                            gainA = GainA(a, d);
                            //計算splitInfoA
                            splitInfoA = SplitInfoA(a, d);
                            //計算gainRatioA
                            if (splitInfoA != 0)
                            {
                                temp = gainA / splitInfoA;
                            }
                            else
                            {
                                temp = 1;
                            }
                            if (temp > gainRatioA)
                            {
                                splitting_criterion.attribute = a;
                                gainRatioA = temp;
                            }
                        }
                    }

                    //計算splitting_criterion
                    {
                        string[] type = Enum.GetNames(GetEnumType(splitting_criterion.attribute));
                        for (int i = 0; i < type.Length; i++)
                        {
                            ArrayList Dj = CopySmallCollection(d, splitting_criterion.attribute, type[i]);
                            splitting_criterion.descriptionList.Add(type[i]);
                            splitting_criterion.splitList.Add(Dj);
                        }
                    }
                    return splitting_criterion;

                case attributeSelectionMethodType.Gini:
                    GiniSplit giniA = new GiniSplit();   //按A劃分的最小gini

                    //計算最小giniA
                    {
                        giniA.gini = 1;
                        splitting_criterion.attribute = (string)attribute_list[0];
                        for (int i = 0; i < attribute_list.Count; i++)
                        {
                            string a = (string)attribute_list[i];
                            GiniSplit temp;
                            //計算gini
                            temp = GiniA(a, d);
                            if (temp.gini < giniA.gini)
                            {
                                giniA = temp;
                            }
                        }
                    }

                    //計算splitting_criterion
                    splitting_criterion = giniA.giniSplitCriterion;
                    return splitting_criterion;

                default:
                    MessageBox.Show("error");
                    break;
            }
            return splitting_criterion;
        }

        //計算Info
        private double Info(ArrayList d)
        {
            double info = 0;
            double countYes = 0;
            for (int i = 0; i < d.Count; i++)
            {
                if (((Item)d[i]).makeover50k == makeover50kType.yes)
                    countYes++;
            }
            if (countYes != 0)
                info += -(countYes / d.Count) * Math.Log((countYes / d.Count), 2);
            if (countYes != d.Count)
                info += -((d.Count - countYes) / d.Count) * Math.Log(((d.Count - countYes) / d.Count), 2);
            return info;
        }

        //計算"age"屬性的Info  ageType { year0_20, year21_30, year31_40, year41_50, year51_60, yearover60 }
        private double Infoage(ArrayList d)
        {
            double year0_20 = 0, year21_30 = 0, year31_40 = 0, year41_50 = 0, year51_60 = 0, yearover60 = 0;
            for (int i = 0; i < d.Count; i++)
            {
                switch (((Item)d[i]).age)
                {
                    case ageType.year0_20:
                        year0_20++;
                        break;
                    case ageType.year21_30:
                        year21_30++;
                        break;
                    case ageType.year31_40:
                        year31_40++;
                        break;
                    case ageType.year41_50:
                        year41_50++;
                        break;
                    case ageType.year51_60:
                        year51_60++;
                        break;
                    case ageType.yearover60:
                        yearover60++;
                        break;
                    default:
                        MessageBox.Show("無此年齡類別");
                        break;
                }
            }
            return (year0_20 * Info(CopySmallCollection(d, "age", ageType.year0_20))
                + year21_30 * Info(CopySmallCollection(d, "age", ageType.year21_30))
                + year31_40 * Info(CopySmallCollection(d, "age", ageType.year31_40))
                + year41_50 * Info(CopySmallCollection(d, "age", ageType.year41_50))
                + year51_60 * Info(CopySmallCollection(d, "age", ageType.year51_60))
                + yearover60 * Info(CopySmallCollection(d, "age", ageType.yearover60))) / d.Count;
        }
        //計算"education"屬性的Info 
        //原有education_numType: 1-16  ,分成6級:   edu1_3,edu4_6,edu7_9,edu10_12,edu13_14,edu15_16
        private double Infoeducation(ArrayList d)
        {
            double edu1_3 = 0, edu4_6 = 0, edu7_9 = 0, edu10_12 = 0, edu13_14 = 0, edu15_16 = 0;
            for (int i = 0; i < d.Count; i++)
            {
                switch (((Item)d[i]).education)
                {
                    case educationType.edu1_3:
                        edu1_3++;
                        break;
                    case educationType.edu4_6:
                        edu4_6++;
                        break;
                    case educationType.edu7_9:
                        edu7_9++;
                        break;
                    case educationType.edu10_12:
                        edu10_12++;
                        break;
                    case educationType.edu13_14:
                        edu13_14++;
                        break;
                    case educationType.edu15_16:
                        edu15_16++;
                        break;
                    default:
                        MessageBox.Show("無此教育類別");
                        break;
                }
            }
            return (edu1_3 * Info(CopySmallCollection(d, "education", educationType.edu1_3))
                   + edu4_6 * Info(CopySmallCollection(d, "education", educationType.edu4_6))
                   + edu7_9 * Info(CopySmallCollection(d, "education", educationType.edu7_9))
                   + edu10_12 * Info(CopySmallCollection(d, "education", educationType.edu10_12))
                   + edu13_14 * Info(CopySmallCollection(d, "education", educationType.edu13_14))
                   + edu15_16 * Info(CopySmallCollection(d, "education", educationType.edu15_16))) / d.Count;
        }

        //計算"occupation"屬性的Info
        //occupationType共14類:Tech_support, Craft_repair, Other_service, Sales, Exec_managerial, Prof_specialty,
        //           Handlers_cleaners, Machine_op_inspct, Adm_clerical, Farming_fishing, Transport_moving, 
        //           Priv_house_serv, Protective_serv, Armed_Forces
        private double Infooccupation(ArrayList d)
        {
            double Tech_support = 0, Craft_repair = 0, Other_service = 0, Sales = 0, Exec_managerial = 0;
            double Prof_specialty = 0, Handlers_cleaners = 0, Machine_op_inspct = 0, Adm_clerical = 0, Farming_fishing = 0;
            double Transport_moving = 0, Priv_house_serv = 0, Protective_serv = 0, Armed_Forces = 0;
            for (int i = 0; i < d.Count; i++)
            {
                switch (((Item)d[i]).occupation)
                {
                    case occupationType.Tech_support:
                        Tech_support++;
                        break;
                    case occupationType.Craft_repair:
                        Craft_repair++;
                        break;
                    case occupationType.Other_service:
                        Other_service++;
                        break;
                    case occupationType.Sales:
                        Sales++;
                        break;
                    case occupationType.Exec_managerial:
                        Exec_managerial++;
                        break;
                    case occupationType.Prof_specialty:
                        Prof_specialty++;
                        break;
                    case occupationType.Handlers_cleaners:
                        Handlers_cleaners++;
                        break;
                    case occupationType.Machine_op_inspct:
                        Machine_op_inspct++;
                        break;
                    case occupationType.Adm_clerical:
                        Adm_clerical++;
                        break;
                    case occupationType.Farming_fishing:
                        Farming_fishing++;
                        break;
                    case occupationType.Transport_moving:
                        Transport_moving++;
                        break;
                    case occupationType.Priv_house_serv:
                        Priv_house_serv++;
                        break;
                    case occupationType.Protective_serv:
                        Protective_serv++;
                        break;
                    case occupationType.Armed_Forces:
                        Armed_Forces++;
                        break;
                    default:
                        MessageBox.Show("無此職業類別");
                        break;
                }
            }
            return (Tech_support * Info(CopySmallCollection(d, "occupation", occupationType.Tech_support))
                   + Craft_repair * Info(CopySmallCollection(d, "occupation", occupationType.Craft_repair))
                   + Other_service * Info(CopySmallCollection(d, "occupation", occupationType.Other_service))
                   + Sales * Info(CopySmallCollection(d, "occupation", occupationType.Sales))
                   + Exec_managerial * Info(CopySmallCollection(d, "occupation", occupationType.Exec_managerial))
                   + Prof_specialty * Info(CopySmallCollection(d, "occupation", occupationType.Prof_specialty))
                   + Handlers_cleaners * Info(CopySmallCollection(d, "occupation", occupationType.Handlers_cleaners))
                   + Machine_op_inspct * Info(CopySmallCollection(d, "occupation", occupationType.Machine_op_inspct))
                   + Adm_clerical * Info(CopySmallCollection(d, "occupation", occupationType.Adm_clerical))
                   + Farming_fishing * Info(CopySmallCollection(d, "occupation", occupationType.Farming_fishing))
                   + Transport_moving * Info(CopySmallCollection(d, "occupation", occupationType.Transport_moving))
                   + Priv_house_serv * Info(CopySmallCollection(d, "occupation", occupationType.Priv_house_serv))
                   + Protective_serv * Info(CopySmallCollection(d, "occupation", occupationType.Protective_serv))
                   + Armed_Forces * Info(CopySmallCollection(d, "occupation", occupationType.Armed_Forces))) / d.Count;
        }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本一区中文字幕| 在线免费观看日本一区| 91视频免费观看| 欧美绝品在线观看成人午夜影视| 久久久久国产精品麻豆ai换脸| 色悠悠久久综合| 日韩美女视频在线| 亚洲国产日产av| 国产不卡在线一区| 精品三级在线看| 亚洲一区二区高清| 91丨九色丨蝌蚪富婆spa| 日韩视频123| 午夜精品福利一区二区三区av| 亚洲一区二区三区影院| 成人国产在线观看| 久久毛片高清国产| 极品销魂美女一区二区三区| 欧美欧美午夜aⅴ在线观看| 国产精品久久久久久一区二区三区 | 日韩高清在线电影| 91久久免费观看| 亚洲国产成人自拍| 国产精品自在在线| 26uuu另类欧美| 秋霞电影网一区二区| 欧美精品一二三| 亚洲成人综合视频| 日本乱人伦aⅴ精品| 亚洲精品日产精品乱码不卡| 99久久国产综合色|国产精品| 欧洲av在线精品| 亚洲最新视频在线观看| 成人黄色a**站在线观看| 中文字幕av一区二区三区免费看 | 日韩亚洲欧美综合| 亚洲高清一区二区三区| 色综合中文字幕| 亚洲一区二区在线视频| 在线区一区二视频| 亚洲高清视频在线| 欧美人狂配大交3d怪物一区| 亚洲高清不卡在线| 日韩一区二区在线观看视频| 日本aⅴ免费视频一区二区三区| 国产成人精品1024| 中文字幕在线一区免费| 国产成人亚洲综合色影视| 亚洲国产精品久久人人爱蜜臀| 日韩高清在线观看| 欧美videofree性高清杂交| 国产综合久久久久影院| 国产欧美日韩三级| 99久久婷婷国产精品综合| 亚洲日本va在线观看| 91黄色激情网站| 日韩中文字幕不卡| 久久亚洲精品国产精品紫薇| 国产在线不卡一卡二卡三卡四卡| 91福利区一区二区三区| 日本不卡的三区四区五区| 337p日本欧洲亚洲大胆精品| 成人av在线播放网址| 亚洲成人精品一区二区| 日韩欧美成人一区二区| 成人高清视频在线| 亚洲资源中文字幕| 久久综合色天天久久综合图片| 丝袜国产日韩另类美女| 国产亚洲欧美激情| 欧美性一二三区| 国产一区二区精品在线观看| 国产精品高潮久久久久无| 欧美美女直播网站| 国产精品996| 日韩精品免费视频人成| 国产亲近乱来精品视频| 欧美日韩五月天| 丁香婷婷综合五月| 日韩国产欧美在线视频| 中文字幕成人在线观看| 91麻豆精品国产91久久久使用方法 | 91精品国产91久久久久久一区二区| 一区二区三区不卡在线观看| 亚洲福利视频导航| 日本一区免费视频| 欧美在线999| 成人激情文学综合网| 美腿丝袜一区二区三区| 最新日韩在线视频| 国产片一区二区三区| 日韩一区二区免费在线观看| 色综合久久中文字幕综合网| 国产一区二区三区黄视频| 午夜视频一区二区| 亚洲一区在线观看免费观看电影高清 | 久久精品久久99精品久久| 亚洲素人一区二区| 亚洲国产成人一区二区三区| 欧美一区二区久久| 欧美日韩视频第一区| 91在线无精精品入口| 国产精品系列在线观看| 久久97超碰国产精品超碰| 亚洲一区二区三区在线看| 亚洲男人天堂av网| 亚洲日穴在线视频| 综合激情成人伊人| 国产精品麻豆视频| 中文字幕在线一区免费| 国产精品免费人成网站| 国产精品免费久久| 亚洲欧美在线高清| 亚洲色图清纯唯美| 亚洲乱码国产乱码精品精的特点 | 亚洲自拍偷拍九九九| 亚洲欧洲另类国产综合| 欧美国产乱子伦| 中文字幕欧美日本乱码一线二线| 99久久夜色精品国产网站| 成年人国产精品| 99riav一区二区三区| 久久你懂得1024| 久久久综合精品| 日本一区二区三区国色天香 | 国产精品欧美综合在线| 中文字幕精品一区| 亚洲视频一区在线| 亚洲综合视频网| 香港成人在线视频| 美日韩一级片在线观看| 精品综合久久久久久8888| 韩国女主播成人在线| 国内精品嫩模私拍在线| 国产黄色精品视频| aaa亚洲精品| 欧美在线你懂的| 日韩精品一区二| 国产精品成人一区二区艾草| 一区二区三区在线看| 亚洲h精品动漫在线观看| 老司机午夜精品| gogogo免费视频观看亚洲一| 日本精品一级二级| 欧美一区二区三区四区久久 | 亚洲免费在线观看| 亚洲va国产天堂va久久en| 久久精品国产精品青草| 国产99久久精品| 欧美揉bbbbb揉bbbbb| 欧美日本韩国一区| 国产人成亚洲第一网站在线播放 | 日本不卡视频在线| 粉嫩av亚洲一区二区图片| 在线观看亚洲专区| 久久亚洲一级片| 综合久久一区二区三区| 免费精品99久久国产综合精品| 亚洲成av人片| 成人午夜视频网站| 欧美一级片免费看| 亚洲视频一二区| 精品影视av免费| 在线观看日韩电影| 精品电影一区二区| 亚洲第一福利一区| 国产精品77777| 91精品国产综合久久精品app | 波多野结衣在线一区| 欧美裸体一区二区三区| 中文字幕欧美日本乱码一线二线 | 欧美日韩国产a| 国产亚洲欧美日韩日本| 热久久国产精品| 91福利视频网站| 日本一区二区不卡视频| 青青草国产精品亚洲专区无| 色妞www精品视频| 亚洲国产精品成人综合色在线婷婷 | 国产一区三区三区| 欧美色爱综合网| 中文字幕在线免费不卡| 久久精品国产**网站演员| 欧美日韩国产综合一区二区| 麻豆精品精品国产自在97香蕉| 日本91福利区| 欧美日韩你懂得| 亚洲黄色录像片| 99精品视频一区二区| 国产欧美一区二区精品久导航| 欧美激情一区二区三区不卡| 天天av天天翘天天综合网色鬼国产| 午夜精品一区二区三区电影天堂| 亚洲一区二区三区四区在线观看 | xnxx国产精品| 久久精品国产一区二区三| 在线国产电影不卡| 亚洲午夜电影在线观看| 91精品91久久久中77777| 亚洲精品美腿丝袜|