weka使用教程
WEKA教程完整版(新)

广东外语外贸大学 杜剑峰
WEKA教程
1. 2. 3.
4.
5. 6.
7.
8. 9.
WEKA简介 数据格式 数据准备 属性选择 可视化分析 分类预测 关联分析 聚类分析 扩展WEKA
课程的总体目标和要求: 熟悉WEKA的基本操作,了 解WEKA的各项功能 掌握数据挖掘实验的流程
2、数据格式(续)
字符串属性 字符串属性中可以包含任意的文本。这种类型的属性在文本挖掘 中非常有用。 示例: @ATTRIBUTE LCC string 日期和时间属性 日期和时间属性统一用―date‖类型表示,它的格式是 @attribute <name> date [<date-format>] 其中<name>是这个属性的名称,<date-format>是一个字符串, 来规定该怎样解析和显示日期或时间的格式,默认的字符串是 ISO-8601所给的日期时间组合格式―yyyy-MM-ddTHH:mm:ss‖。 数据信息部分表达日期的字符串必须符合声明中规定的格式要求 (下文有例子)。
2、数据格式(续)
WEKA支持的<datatype>有四种
numeric <nominal-specification> string date [<date-format>]
数值型 标称(nominal)型 字符串型 日期和时间型
其中<nominal-specification> 和<date-format> 将在下 面说明。还可以使用两个类型―integer‖和―real‖,但是 WEKA把它们都当作―numeric‖看待。注意―integer‖, ―real‖,―numeric‖,―date‖,―string‖这些关键字是区分 大小写的,而―relation‖、“attribute ‖和―data‖则不区分。
weka数据预处理标准化方法说明

weka数据预处理标准化方法说明Weka(Waikato Environment for Knowledge Analysis)是一套用于数据挖掘和机器学习的开源软件工具集,提供了丰富的功能,包括数据预处理、分类、回归、聚类等。
在Weka中,数据预处理是一个关键的步骤,其中标准化是一个常用的技术,有助于提高机器学习算法的性能。
下面是在Weka中进行数据标准化的一般步骤和方法说明:1. 打开Weka:启动Weka图形用户界面(GUI)或使用命令行界面。
2. 加载数据:选择“Explorer”选项卡,然后点击“Open file”按钮加载您的数据集。
3. 选择过滤器(Filter):在“Preprocess”选项卡中,选择“Filter”子选项卡,然后点击“Choose”按钮选择一个过滤器。
4. 选择标准化过滤器:在弹出的对话框中,找到并选择标准化过滤器。
常见的标准化过滤器包括:- Normalize:这个过滤器将数据标准化为给定的范围,通常是0到1。
- Standardize:使用这个过滤器可以将数据标准化为零均值和单位方差。
- AttributeRange:允许您手动指定每个属性的范围,以进行标准化。
5. 设置标准化选项:选择标准化过滤器后,您可能需要配置一些选项,例如范围、均值和方差等,具体取决于选择的过滤器。
6. 应用过滤器:配置完成后,点击“Apply”按钮,将标准化过滤器应用于数据。
7. 保存处理后的数据:如果需要,您可以将标准化后的数据保存到文件中。
8. 查看结果:在数据预处理完成后,您可以切换到“Classify”选项卡,选择一个分类器,并使用标准化后的数据进行模型训练和测试。
记住,具体的步骤和选项可能会因Weka版本的不同而有所差异,因此建议查阅Weka文档或在线资源以获取更具体的信息。
此外,标准化的适用性取决于您的数据和机器学习任务,因此在应用标准化之前,最好先了解您的数据的分布和特征。
weka使用教程

weka使用教程Weka是一个强大的开源机器学习软件,它提供了各种功能和算法来进行数据挖掘和预测分析。
以下是一个简单的Wea使用教程,帮助您了解如何使用它来进行数据分析和建模。
1. 安装Weka:首先,您需要下载并安装Weka软件。
您可以从官方网站上下载Weka的最新版本,并按照安装说明进行安装。
2. 打开Weka:安装完成后,打开Weka软件。
您将看到一个欢迎界面,上面列出了各种不同的选项和功能。
选择“Explorer”选项卡,这将帮助您导航和执行不同的任务。
3. 导入数据:在Explorer选项卡上,点击“Open file”按钮以导入您的数据集。
选择您要导入的数据文件,并确认数据文件的格式和结构。
4. 数据预处理:在导入数据之后,您可能需要对数据进行预处理,以清除噪声和处理缺失值。
在Weka中,您可以使用各种过滤器和转换器来处理数据。
点击“Preprocess”选项卡,然后选择适当的过滤器和转换器来定义您的预处理流程。
5. 数据探索:在数据预处理之后,您可以使用Weka的可视化工具来探索您的数据。
点击“Classify”选项卡,然后选择“Visualize”选项。
这将显示您的数据集的可视化图表和统计信息。
6. 建立模型:一旦您对数据进行了足够的探索,您可以使用Weka的各种机器学习算法建立模型。
在“Classify”选项卡上选择“Choose”按钮,并从下拉菜单中选择一个适当的分类算法。
然后,使用“Start”按钮训练模型并评估模型的性能。
7. 模型评估:一旦您建立了模型,您可以使用Weka提供的评估指标来评估模型的性能。
在“Classify”选项卡上,选择“Evaluate”选项,Weka将自动计算模型的准确性、精确度、召回率等指标。
8. 导出模型:最后,一旦您满意您的模型性能,您可以将模型导出到其他应用程序或格式中。
在Weka中,点击“Classify”选项卡,选择“Save model”选项,并指定模型的保存位置和格式。
WEKA操作入门

WEKA操作入门WEKA的全名是怀卡托智能分析环境(Waikato Environment for Knowledge Analysis),它的源代码可通过/ml/weka得到。
同时weka也是新西兰的一种鸟名,而WEKA的主要开发者来自新西兰。
WEKA作为一个公开的数据挖掘工作平台,用于非商业目的的研究行为,集合了大量能承担数据挖掘任务的机器学习算法,包括对数据进行预处理,分类,回归、聚类、关联规则以及在新的交互式界面上的可视化。
WEKA的接口是开放的,可以查看weka的接口文档,在weka中集成自己的算法甚至借鉴它的方法自己实现可视化工具。
2005年8月,在第11届ACM SIGKDD国际会议上,怀卡托大学的Weka小组荣获了数据挖掘和知识探索领域的最高服务奖,Weka系统得到了广泛的认可,被誉为数据挖掘和机器学习历史上的里程碑,是现今最完备的数据挖掘工具之一(已有11年的发展历史)。
Weka 的每月下载次数已超过万次。
1.数据格式跟很多电子表格或数据分析软件一样,WEKA所处理的数据集是图1那样的一个二维的表格。
图1. weather.arff数据集WEKA中的术语。
表格里的一个横行称作一个实例(Instance),相当于统计学中的一个样本,或者数据库中的一条记录。
竖行称作一个属性(Attrbute),相当于统计学中的一个变量,或者数据库中的一个字段。
这样一个表格,或者叫数据集,在WEKA看来,呈现了属性之间的一种关系(Relation)。
图1中一共有14个实例,5个属性,关系名称为“weather”。
WEKA存储数据的格式是ARFF(Attribute-Relation File Format)文件,这是一种ASCII文本文件。
图1所示的二维表格存储在如下的ARFF文件中。
这也就是WEKA自带的“weather.arff”文件,在WEKA安装目录的“data”子目录下可以找到。
relation weather@attribute outlook {sunny, overcast, rainy}@attribute temperature real@attribute humidity real@attribute windy {TRUE, FALSE}@attribute play {yes, no}@datasunny,85,85,FALSE,nosunny,80,90,TRUE,noovercast,83,86,FALSE,yesrainy,70,96,FALSE,yesrainy,68,80,FALSE,yesrainy,65,70,TRUE,noovercast,64,65,TRUE,yessunny,72,95,FALSE,nosunny,69,70,FALSE,yesrainy,75,80,FALSE,yessunny,75,70,TRUE,yesovercast,72,90,TRUE,yesovercast,81,75,FALSE,yesrainy,71,91,TRUE,no以“%”开始的行是注释,WEKA将忽略这些行。
weka操作介绍讲解学习

标变量,直方图中的每个长方形
就会按照该变量的比例分成不同
颜色的段。默认地,分类或回归
任务的默认目标变量是数据集的
最后一个属性。要想换个分段的
依据,即目标变量,在区域7上 方的下拉框中选个不同的分类属
性就可以了。下拉框里选上
“No Class”或者一个数值属性会 变成黑白的直方图。
wekቤተ መጻሕፍቲ ባይዱ操作介绍
在KnowledgeFlow 窗口顶部有八个标签: DataSources--数据载入器 DataSinks--数据保存器 Filters--筛选器 Classifiers--分类器 Clusterers--聚类器 Associations—关联器 Evaluation—评估器 Visualization—可视化
关联运行结果
此课件下载可自行编辑修改,仅供参考! 感谢您的支持,我们努力做得更好!谢谢
3 4
5 8
1 2
6 7
1.区域1的几个选项卡是用来切换不同的 挖掘任务面板。
Preprocess(数据预处理) Classify(分类) Cluster(聚类) Associate(关联分析) Select Attributes(选择属性) Visualize(可视化)
2. 区域2是一些常用按钮。包括打开数据, 保存及编辑功能。我们可以在这里把 “bank-data.csv”,另存为“bank-data.arff”
Cluster
主要算法包括: SimpleKMeans — 支持分类属性的K均值算法 DBScan — 支持分类属性的基于密度的算法 EM — 基于混合模型的聚类算法 FathestFirst — K中 心点算法 OPTICS — 基于密度的另一个算法 Cobweb — 概念聚类算法 sIB — 基于信息论的聚类算法,不支持分类属性 XMeans — 能自动确定簇个数的扩展K均值算法,不 支持分类属性
WEKA 5

图5. 5 Weka API文档
5.2.2
weka.core包
core(核心)包是Weka系统的核心,几乎所有的其他类 都访问核心包里的类。可以点击页面左上部的 weka.core超链接以了解包内包含什么内容。如图5. 6所 示,页面左下部显示核心包内的对象,按功能将其分为 Interfaces(接口)、Classes(类)、Enums(枚举) 和Exceptions(例外)四个部分。前两个部分比较重要, 其中,Classes部分列出了核心包里的类,Interfaces部 分则列出核心包提供的接口。接口与类相似,唯一的区 别是接口本身基本不做任何工作,它仅仅列出一些方法 而没有真正实现,只有这些接口的实现类才为这些方法 提供实现代码。例如,OptionHandler接口定义了处理命 令行选项的各种方法,实现该接口的类(包括全部的分 类器)必须提供这些方法的实现代码。
图5. 6 核心包内的对象
5.2.3
weka.classifiers包
classifiers包中包含大部分分类算法和数值预测算法的实 现。前文已经叙述过,Weka将分类和回归都归为分类 问题,因此数值预测算法也包含在分类器中,因为数值 预测可以解释为是连续型类别值的预测。在该包中最为 重要的是Classifier接口,它定义了分类或数值预测方案 的总体结构,其他的分类器都要实现该接口。Classifier 接口包含三个重要的方法:buildClassifier()、 classifyInstance()和distributionForInstance()。在面向对 象编程的术语中,学习算法都是Classifier的子类,因此 自动继承了这三种方法,并且每个学习方案重新定义如 何建立一个分类器,以及如何对实例进行分类。这样, 给出一个从其他Java代码来构建和使用分类器的统一接 口。因此,相同的评估模块可以用于对Weka中任意分 类器的性能进行评估。
weka使用总结(数据库的连接以及myeclipse的配置)

Weka使用总结:1.weka的下载安装去官网上下载这个程序,找这个程序时要细心点,官网的搜索若不使用下面的搜索词就不一定能找到这个软件的下载地址2.双击软件,运行安装程序,在c盘路径下生成下面的文件3.在MyEClipse中新建java项目WEKA,将上面的weka-src.jar解压缩,把解压后的文件拷到WEKA项目中,lib文件夹中要引入相应的包4.weka连接mysql数据库。
在weka/experiment目录中找到修改databaseutils.props将jdbcDriver=org.gjt.mm.mysql.Driver[修改为-->jdbcDriver=com.mysql.jdbc.Driver]修改jdbcURL=jdbc:mysql://server_name:3306/database_name完整的代码修改如下# General information on database access can be found here:# /Databases## Version: $Revision: 5836 $# The comma-separated list of jdbc drivers to use#jdbcDriver=RmiJdbc.RJDriver,jdbc.idbDriver#jdbcDriver=jdbc.idbDriver#jdbcDriver=RmiJdbc.RJDriver,jdbc.idbDriver,org.gjt.mm.mysql.Driver,com.mck oi.JDBCDriver,org.hsqldb.jdbcDriverjdbcDriver=com.mysql.jdbc.Driver# The url to the experiment database#jdbcURL=jdbc:rmi://expserver/jdbc:idb=experiments.prp#jdbcURL=jdbc:idb=experiments.prpjdbcURL=jdbc:mysql://server_name:3306/database_name# the method that is used to retrieve values from the db# (java datatype + RecordSet.<method>)# string, getString() = 0; --> nominal# boolean, getBoolean() = 1; --> nominal# double, getDouble() = 2; --> numeric# byte, getByte() = 3; --> numeric# short, getByte()= 4; --> numeric# int, getInteger() = 5; --> numeric# long, getLong() = 6; --> numeric# float, getFloat() = 7; --> numeric# date, getDate() = 8; --> date# text, getString() = 9; --> string# time, getTime() = 10; --> date# the original conversion: <column type>=<conversion>#char=0#varchar=0#longvarchar=0#binary=0#varbinary=0#longvarbinary=0#numeric=2#decimal=2#tinyint=3#smallint=4#integer=5#bigint=6#real=7#float=2#double=2#date=8#time=10#timestamp=8#mysql-conversionstring, getString() = 0; --> nominal boolean, getBoolean() = 1; --> nominal double, getDouble() = 2; --> numeric byte, getByte() = 3; --> numeric short, getByte()= 4; --> numeric int, getInteger() = 5; --> numeric long, getLong() = 6; --> numeric gloat, getFloat() = 7; --> numeric date, getDate() = 8; --> datetext, getString() = 9; --> string TINYINT=3SMALLINT=4#SHORT=4SHORT=5INTEGER=5INT=5LONG=6REAL=7NUMERIC=2DECIMAL=2FLOAT=2DOUBLE=2CHAR=0TEXT=0VARCHAR=0LONGVARCHAR=9BINARY=0VARBINARY=0 LONGVARBINARY=9BIT=1BLOB=9DATE=8TIME=8DATETIME=8TIMESTAMP=8#mappings for table creation CREATE_STRING=TEXTCREATE_INT=INTCREATE_DOUBLE=DOUBLECREATE_DATE=DATETIME DateFormat=yyyy-MM-dd HH:mm:ss#database flagscheckUpperCaseNames=falsecheckLowerCaseNames=falsecheckForTable=truesetAutoCommit=truecreateIndex=false# All the reserved keywords for this databaseKeywords=\AND,\ASC,\BY,\DESC,\FROM,\GROUP,\INSERT,\ORDER,\SELECT,\UPDATE,\WHERE# The character to append to attribute names to avoid exceptions due to # clashes between keywords and attribute namesKeywordsMaskChar=_#flags for loading and saving instances using DatabaseLoader/Saver nominalToStringLimit=50idColumn=auto_generated_id配好之后在lib目录下加载一个要重新生成jar包需下载一个将这个压缩包解压之后置于C:\Users\ys\AppData\Local\Genuitec\MyEclipse 8.x Latest\dropins目录下,重新启动myeclipse,此时在WEKA项目中点右键出现build fat jar文件,点击进去之后,它会自动把引用的数据库连接包自动加载进去,生成一个weka-fat.jar包打开weka-fat.jar包,运行weka,就能和数据库连接了。
WEKA中文详细教程

Weka可以将分析结果导出为多种格式,如CSV、ARFF、LaTeX等,用户可以通过“文件”菜单 选择“导出数据”来导出数据。
数据清理
缺失值处理
Weka提供了多种方法来处理缺失值, 如删除含有缺失值的实例、填充缺失 值等。
异常值检测
Weka提供了多种异常值检测方法, 如基于距离的异常值检测、基于密度 的异常值检测等。
Weka中文详细教程
目录
• Weka简介 • 数据预处理 • 分类算法 • 关联规则挖掘 • 回归分析 • 聚类分析 • 特征选择与降维 • 模型评估与优化
01
Weka简介
Weka是什么
01 Weka是一款开源的数据挖掘软件,全称是 "Waikato Environment for Knowledge Analysis",由新西兰怀卡托大学开发。
解释性强等优点。
使用Weka进行决策树 分类时,需要设置合 适的参数,如剪枝策 略、停止条件等,以 获得最佳分类效果。
决策树分类结果易于 理解和解释,能够为 决策提供有力支持。
贝叶斯分类器
贝叶斯分类器是一种 基于概率的分类算法, 通过计算不同类别的 概率来进行分类。
Weka中的朴素贝叶斯 分类器是一种基于贝 叶斯定理的简单分类 器,适用于特征之间 相互独立的场景。
08
模型评估与优化
交叉验证
01
交叉验证是一种评估机器学习模型性能的常用方法,通过将数据集分成多个子 集,然后使用其中的一部分子集训练模型,其余子集用于测试模型。
02
常见的交叉验证方法包括k-折交叉验证和留出交叉验证。在k-折交叉验证中, 数据集被分成k个大小相近的子集,每次使用其中的k-1个子集训练模型,剩余 一个子集用于测试。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
WEKA使用教程目录1. 简介2. 数据格式3.数据准备4. 关联规则(购物篮分析)5. 分类与回归6. 聚类分析1. 简介WEKA的全名是怀卡托智能分析环境(Waikato Environment for Knowledge Analysis),它的源代码可通过/ml/weka得到。
同时weka也是新西兰的一种鸟名,而WEK A的主要开发者来自新西兰。
WEKA作为一个公开的数据挖掘工作平台,集合了大量能承担数据挖掘任务的机器学习算法,包括对数据进行预处理,分类,回归、聚类、关联规则以及在新的交互式界面上的可视化。
如果想自己实现数据挖掘算法的话,可以看一看weka的接口文档。
在weka中集成自己的算法甚至借鉴它的方法自己实现可视化工具并不是件很困难的事情。
2005年8月,在第11届ACM SIGKDD国际会议上,怀卡托大学的Weka小组荣获了数据挖掘和知识探索领域的最高服务奖,Weka系统得到了广泛的认可,被誉为数据挖掘和机器学习历史上的里程碑,是现今最完备的数据挖掘工具之一(已有11年的发展历史)。
Weka的每月下载次数已超过万次。
--整理自/computers/common/info.asp?id=293042. 数据格式巧妇难为无米之炊。
首先我们来看看WEKA所用的数据应是什么样的格式。
跟很多电子表格或数据分析软件一样,WEKA所处理的数据集是图1那样的一个二维的表格。
图1 新窗口打开这里我们要介绍一下WEKA中的术语。
表格里的一个横行称作一个实例(Instance),相当于统计学中的一个样本,或者数据库中的一条记录。
竖行称作一个属性(Attrbute),相当于统计学中的一个变量,或者数据库中的一个字段。
这样一个表格,或者叫数据集,在WEKA看来,呈现了属性之间的一种关系(Rela tion)。
图1中一共有14个实例,5个属性,关系名称为“weather”。
WEKA存储数据的格式是ARFF(Attribute-Relation File Format)文件,这是一种ASCII文本文件。
图1所示的二维表格存储在如下的ARFF文件中。
这也就是WEKA自带的“weather.arff”文件,在WEK A安装目录的“data”子目录下可以找到。
Code:% ARFF file for the weather data with some numric features%@relation weather@attribute outlook {sunny, overcast, rainy}@attribute temperature real@attribute humidity real@attribute windy {TRUE, FALSE}@attribute play {yes, no}@data%% 14 instances%sunny,85,85,FALSE,nosunny,80,90,TRUE,noovercast,83,86,FALSE,yesrainy,70,96,FALSE,yesrainy,68,80,FALSE,yesrainy,65,70,TRUE,noovercast,64,65,TRUE,yessunny,72,95,FALSE,nosunny,69,70,FALSE,yesrainy,75,80,FALSE,yessunny,75,70,TRUE,yesovercast,72,90,TRUE,yesovercast,81,75,FALSE,yesrainy,71,91,TRUE,no需要注意的是,在Windows记事本打开这个文件时,可能会因为回车符定义不一致而导致分行不正常。
推荐使用UltraEdit这样的字符编辑软件察看ARFF文件的内容。
下面我们来对这个文件的内容进行说明。
识别ARFF文件的重要依据是分行,因此不能在这种文件里随意的断行。
空行(或全是空格的行)将被忽略。
以“%”开始的行是注释,WEKA将忽略这些行。
如果你看到的“weather.arff”文件多了或少了些“%”开始的行,是没有影响的。
除去注释后,整个ARFF文件可以分为两个部分。
第一部分给出了头信息(Head information),包括了对关系的声明和对属性的声明。
第二部分给出了数据信息(Data information),即数据集中给出的数据。
从“@data”标记开始,后面的就是数据信息了。
关系声明关系名称在ARFF文件的第一个有效行来定义,格式为@relation <relation-name><relation-name>是一个字符串。
如果这个字符串包含空格,它必须加上引号(指英文标点的单引号或双引号)。
属性声明属性声明用一列以“@attribute”开头的语句表示。
数据集中的每一个属性都有它对应的“@attribute”语句,来定义它的属性名称和数据类型。
这些声明语句的顺序很重要。
首先它表明了该项属性在数据部分的位置。
例如,“humidity”是第三个被声明的属性,这说明数据部分那些被逗号分开的列中,第三列数据85 90 86 96 ... 是相应的“humidity”值。
其次,最后一个声明的属性被称作class属性,在分类或回归任务中,它是默认的目标变量。
属性声明的格式为@attribute <attribute-name> <datatype>其中<attribute-name>是必须以字母开头的字符串。
和关系名称一样,如果这个字符串包含空格,它必须加上引号。
WEKA支持的<datatype>有四种,分别是numeric-------------------------数值型<nominal-specification>-----分类(nominal)型string----------------------------字符串型date [<date-format>]--------日期和时间型其中<nominal-specification> 和<date-format> 将在下面说明。
还可以使用两个类型“integer”和“real”,但是WEKA把它们都当作“numeric”看待。
注意“integer”,“real”,“numeric”,“date”,“string”这些关键字是区分大小写的,而“relation”“attribute ”和“date”则不区分。
数值属性数值型属性可以是整数或者实数,但WEKA把它们都当作实数看待。
分类属性分类属性由<nominal-specification>列出一系列可能的类别名称并放在花括号中:{<nominal-name1>, <nominal-name2>, <nominal-name3>, ...} 。
数据集中该属性的值只能是其中一种类别。
例如如下的属性声明说明“outlook”属性有三种类别:“sunny”,“ overcast”和“rainy”。
而数据集中每个实例对应的“outlook”值必是这三者之一。
@attribute outlook {sunny, overcast, rainy}如果类别名称带有空格,仍需要将之放入引号中。
字符串属性字符串属性中可以包含任意的文本。
这种类型的属性在文本挖掘中非常有用。
示例:@ATTRIBUTE LCC string日期和时间属性日期和时间属性统一用“date”类型表示,它的格式是@attribute <name> date [<date-format>]其中<name>是这个属性的名称,<date-format>是一个字符串,来规定该怎样解析和显示日期或时间的格式,默认的字符串是ISO-8601所给的日期时间组合格式“yyyy-MM-dd T HH:mm:ss”。
数据信息部分表达日期的字符串必须符合声明中规定的格式要求(下文有例子)。
数据信息数据信息中“@data”标记独占一行,剩下的是各个实例的数据。
每个实例占一行。
实例的各属性值用逗号“,”隔开。
如果某个属性的值是缺失值(missing value),用问号“?”表示,且这个问号不能省略。
例如:@datasunny,85,85,FALSE,no?,78,90,?,yes字符串属性和分类属性的值是区分大小写的。
若值中含有空格,必须被引号括起来。
例如:@relation LCCvsLCSH@attribute LCC string@attribute LCSH string@dataAG5, 'Encyclopedias and dictionaries.;Twentieth century.'AS262, 'Science -- Soviet Union -- History.'日期属性的值必须与属性声明中给定的相一致。
例如:@RELATION Timestamps@ATTRIBUTE timestamp DATE "yyyy-MM-dd HH:mm:ss"@DATA"2001-04-03 12:12:12""2001-05-03 12:59:55"稀疏数据有的时候数据集中含有大量的0值(比如购物篮分析),这个时候用稀疏格式的数据存贮更加省空间。
稀疏格式是针对数据信息中某个实例的表示而言,不需要修改ARFF文件的其它部分。
看如下的数据:@data0, X, 0, Y, "class A"0, 0, W, 0, "class B"用稀疏格式表达的话就是@data{1 X, 3 Y, 4 "class A"}{2 W, 4 "class B"}每个实例用花括号括起来。
实例中每一个非0的属性值用<index> <空格> <value>表示。
<index>是属性的序号,从0开始计;<value>是属性值。
属性值之间仍用逗号隔开。
这里每个实例的数值必须按属性的顺序来写,如{1 X, 3 Y, 4 "class A"},不能写成{3 Y, 1 X, 4 "class A"}。
注意在稀疏格式中没有注明的属性值不是缺失值,而是0值。
若要表示缺失值必须显式的用问号表示出来。
Relational型属性在WEKA 3.5版中增加了一种属性类型叫做Relational,有了这种类型我们可以像关系型数据库那样处理多个维度了。