資源簡介
實驗描述:
對指定數據集進行分類問題的分析,選擇適當的分類算法,編寫程序實現,提交程序和結果報告
數據集: balance-scale.data(見附件一) ,已有數據集構建貝葉斯分類器。
數據包括四個屬性:五個屬性值 第一個屬性值表示樣本的類別號,其他四個屬性為四個不同的特征值。

代碼片段和文件信息
package?com.company;
/********************************************************************************
?*
?*?李勇志?2014301500370
?*?數據挖掘實驗,分類實驗
?*?樸素貝葉斯分類
?*
?*訓練樣本示例格式:(R1554)
?*/
import?java.io.File;
import?java.util.Scanner;
import?java.util.Vector;
public?class?Bayes?{
????static?Vector?indata?=?new?Vector<>();//讀入數據
????static?Vector?catagory_R?=?new?Vector<>();//存儲類別R的所有數據
????static?Vector?catagory_L?=?new?Vector<>();//存儲類別L的所有數據
????static?Vector?catagory_B?=?new?Vector<>();//存儲類別B的所有數據
????public?static?boolean?loadData(String?url)?{//加載測試的數據文件
????????try?{
????????????Scanner?in?=?new?Scanner(new?File(url));//讀入文件
????????????while?(in.hasNextLine())?{
????????????????String?str?=?in.nextLine();//將文件的每一行存到str的臨時變量中
????????????????indata.add(str);//將每一個樣本點的數據追加到Vector?中
????????????}
????????????return?true;
????????}?catch?(Exception?e)?{?//如果出錯返回false
????????????return?false;
????????}
????}
????public?static?void?pretreatment(Vector?indata)?{???//數據預處理,將原始數據中的每一個屬性值提取出來存放到Vector??data中
????????int?i?=?0;
????????String?t;
????????while?(i?????????????int[]?tem?=?new?int[4];
????????????t?=?indata.get(i);
????????????String[]?sourceStrArray?=?t.split(““?5);//使用字符串分割函數提取出各屬性值
????????????switch?(sourceStrArray[0])?{
????????????????case?“R“:?{
????????????????????for?(int?j?=?1;?j?5;?j++)?{
????????????????????????tem[j?-?1]?=?Integer.parseInt(sourceStrArray[j]);
????????????????????}
????????????????????catagory_R.add(tem);
????????????????????break;
????????????????}
????????????????case?“L“:?{
????????????????????for?(int?j?=?1;?j?5;?j++)?{
????????????????????????tem[j?-?1]?=?Integer.parseInt(sourceStrArray[j]);
????????????????????}
????????????????????catagory_L.add(tem);
????????????????????break;
????????????????}
????????????????case?“B“:?{
????????????????????for?(int?j?=?1;?j?5;?j++)?{
????????????????????????tem[j?-?1]?=?Integer.parseInt(sourceStrArray[j]);
????????????????????}
????????????????????catagory_B.add(tem);
????????????????????break;
????????????????}
????????????}
????????????i++;
????????}
????}
????public?static?double?bayes(int[]?x?Vector?catagory)?{
????????double[]?ai_y?=?new?double[4];
????????int[]?sum_ai?=?new?int[4];
????????for?(int?i?=?0;?i?4;?i++)?{
????????????for?(int?j?=?0;?j?????????????????if?(x[i]?==?catagory.get(j)[i])
????????????????????sum_ai[i]++;
????????????}
????????}
????????for?(int?i?=?0;?i?4;?i++)?{
????????????ai_y[i]?=?(double)?sum_ai[i]?/?(double)?catagory.size();
????????}
????????return?ai_y[0]?*?ai_y[1]?*?ai_y[2]?*?ai_y[3];
????}
????public?static?void?main(String[]?args)?{
????????loadData(“balance-scale.data“);
????????pretreatment(indata);
????????double?p_yR?=?(double)?catagory_R.size()?/?(double)?(indata.size());//表示概率p(R)
????????double?p_y
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2016-11-25?19:51??貝葉斯分類\
?????目錄???????????0??2016-12-10?12:10??貝葉斯分類\.idea\
?????文件?????????686??2016-11-22?14:52??貝葉斯分類\.idea\compiler.xm
?????目錄???????????0??2016-11-25?19:51??貝葉斯分類\.idea\copyright\
?????文件??????????76??2016-11-22?14:52??貝葉斯分類\.idea\copyright\profiles_settings.xm
?????文件??????????97??2016-11-22?14:52??貝葉斯分類\.idea\desc
?????文件?????????529??2016-11-22?14:52??貝葉斯分類\.idea\misc.xm
?????文件?????????277??2016-11-22?14:53??貝葉斯分類\.idea\modules.xm
?????文件??????????91??2016-11-22?14:52??貝葉斯分類\.idea\project-template.xm
?????文件???????39217??2016-12-07?13:52??貝葉斯分類\.idea\workspace.xm
?????文件????????6249??2016-11-22?15:05??貝葉斯分類\balance-scale.data
?????目錄???????????0??2016-11-22?20:01??貝葉斯分類\out\
?????目錄???????????0??2016-11-22?20:01??貝葉斯分類\out\production\
?????目錄???????????0??2016-11-22?20:01??貝葉斯分類\out\production\貝葉斯分類\
?????目錄???????????0??2016-11-22?20:01??貝葉斯分類\out\production\貝葉斯分類\com\
?????目錄???????????0??2016-11-25?19:51??貝葉斯分類\out\production\貝葉斯分類\com\company\
?????文件????????6249??2016-11-22?20:19??貝葉斯分類\out\production\貝葉斯分類\com\company\balance-scale.data
?????文件????????4739??2016-11-23?16:23??貝葉斯分類\out\production\貝葉斯分類\com\company\Bayes.class
?????文件?????????451??2016-11-23?16:23??貝葉斯分類\out\production\貝葉斯分類\com\company\Jmy.class
?????目錄???????????0??2016-11-22?20:01??貝葉斯分類\src\
?????目錄???????????0??2016-11-22?20:01??貝葉斯分類\src\com\
?????目錄???????????0??2016-12-07?13:49??貝葉斯分類\src\com\company\
?????文件????????6249??2016-11-22?15:05??貝葉斯分類\src\com\company\balance-scale.data
?????文件????????5530??2016-11-23?16:23??貝葉斯分類\src\com\company\Bayes.java
?????文件?????????437??2016-11-22?14:52??貝葉斯分類\貝葉斯分類.iml
- 上一篇:3D俄羅斯方塊
- 下一篇:Java實現BP神經網絡,實現對空氣質量的分析和評級
評論
共有 條評論