从中可以看出,对于“温度”这一项,一共有12条不同的内容,最小值为64(单位:华氏摄氏度,下同),最大值为85,选择过滤器“choose”按钮,或者在同行的空白处点击一下,即可弹出过滤器选择框,逐级找到 “Weka.filters.unsupervised.attribute.Discretize”,点击;若无法关闭这个树,在树之外的地方点击 “Explorer”面板即可。
现在“Choose”旁边的文本框应该显示“Discretize -B 10 -M -0.1 -R first-last”。点击这个文本框会弹出新窗口以修改离散化的参数。
因为这里不打算对所有的属性离散化,只是针对对第2个和第3个属性,故把attributeIndices右边改成 “2,3”。计划把这两个属性都分成3段,于是把“bins”改成“3”。其它文本框里的值不用更改,关于这些参数的意义可以点击“More”查看。点“OK”回到 “Explorer”,可以看到“temperature”和“humidity”已经被离散化成为分类型的属性。若想放弃离散化可以点“Undo”。
可以看到temperature属性信息如下显示:
Humidity属性变成如下样式:
3、在Classify,Cluster,Associate选项中分别尝试不同算法。
七、通过实验,掌握Weka的使用
实验二 基于关联规则的信息获取
一、实验名称:
基于关联规则的信息获取 二、实验目的:
通过一个已有的训练数据集,观察训练集中的实例,进行关联信息获取,更好地理解和掌握关联规则算法的基本原理,建立相应的预测模型,然后对新的未知实例进行预测,预测的准确程度来衡量所建立模型的好坏。 三、实验要求
1、熟悉Weka平台 2、掌握关联规则算法
3、对数据进行预处理,利用Weka和不同参数设置进行关联分析,对比结果,得出结论,对问题进行总结。 四、实验平台
新西兰怀卡托大学研制的Weka系统 五、实验数据
1、使用银行对资产进行评估的数据bank-data.arf,数据里有12个属性,分别是id,age,sex,region,income,married,children, car, save_act, current_act, mortgage,pep.共600个实例。 六、实验方法和步骤
1、打开WEKA界面如下:界面中有四个选择Simple CLC, Explorer, Experimenter, KnowledgeFlow。 我们选择Explorer进行实验。 文件格式转化为ARFF的方式。
2、选择Explorer选项,选择Open file打开bank-data.arff数据,打开
可以看见数据中的属性,选择属性从右边可以看到它的取值范围 1)CSV换成ARFF格式
将CSV转换为ARFF最迅捷的办法是使用WEKA所带的命令行工具。运行WEKA的主程序,出现GUI后可以点击下方按钮进入相应的模块。我们点击进入“Simple CLI”模块提供的命令行功能。在新窗口的最下方(上方是不能写字的)输入框写上
java weka.core.converters.CSVLoader filename.csv > filename.arff 即可完成转换。
在WEKA 3.5中提供了一个“Arff Viewer”模块,我们可以用它打开一个CSV文件将进行浏览,然后另存为ARFF文件。
进入“Explorer”模块,从上方的按钮中打开CSV文件然后另存为ARFF文件亦可。
3、进行数据过滤,选择Filter中的Discretize方法,点击Apply,先对ARFF文件进行离散化:用UltraEdit(或者其它文本编辑器)对其进行编辑:@attribute children numeric改为:
@attribute children {0,1,2,3} 然后用discretize算法对age和income离散化,并删掉id项因为它对关联规则分析无影响,保存文件。 4、选择Associate项中的Apriori算法分析进行关联信息获取,并进行参数
设置。
七、通过实验,要求同学在关联规则信息获取实验中解决以下问题,并递交完整的实验报告
1. 对于非xls格式的数据如何转换成ARFF数据类型?请给出你了解到的几种数据类型到ARFF的转换方式?
2. 在算法出来的lift排前1的规则中,如: 1. age=52_max save_act=YES current_act=YES 113 ==> income=43759_max
61 conf:(0.54) < lift:(4.05)> lev:(0.08) [45] conv:(1.85) 请说明 其中113、 61、conf:(0.54)都表示什么含义?
相关推荐: