前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何在Weka中加载CSV机器学习数据

如何在Weka中加载CSV机器学习数据

作者头像
花落花飞去
发布2018-02-08 14:43:36
8.1K0
发布2018-02-08 14:43:36
举报
文章被收录于专栏:人工智能人工智能

How To Load CSV Machine Learning Data in Weka

原文作者:Jason Brownlee

原文地址:https://machinelearningmastery.com/load-csv-machine-learning-data-weka/

译者微博:@从流域到海域

译者博客:blog.csdn.net/solo95

Weka的全名是怀卡托智能分析环境(Waikato Environment for Knowledge Analysis),是一款免费的,非商业化(与之对应的是SPSS公司商业数据挖掘产品--Clementine )的,基于JAVA环境下开源的机器学习(machine learning)以及数据挖掘(data mining)软件。它和它的源代码可在其官方网站下载。有趣的是,该软件的缩写WEKA也是新西兰独有的一种鸟名,而Weka的主要开发者同时恰好来自新西兰的the University of Waikato(来自百度百科,译者注)。

如何在Weka中加载CSV机器学习数据

在开始建模之前,您必须能够加载(您的)数据。

在这篇文章中,您将了解如何在Weka中加载您的CSV数据集。阅读这篇文章后,你会知道:

  • 关于ARFF文件格式以及它在Weka中表示数据的默认方式。
  • 如何在Weka Explorer中加载CSV文件并将其保存为ARFF格式。
  • 如何在ArffViewer工具中加载CSV文件并将其保存为ARFF格式。

本教程假定您已经安装了Weka。

让我们开始吧。

How To Load CSV Machine Learning Data in Weka

照片由Thales提供,保留某些权利。

如何在Weka中描述数据

机器学习算法主要被设计为与数组阵列一起工作。

这被称为表格化或结构化数据,因为数据在由行和列组成的电子表格中看起来就是这样。

Weka在描述数据时拥有特定的以计算机科学为中心的词汇表:

  • 实例(Instance):一行数据被称为一个实例,就像在一个实例中或来自问题域中的观察(observation)一样。
  • 属性(Attribute):一列数据被称为一个特征或属性,就像在观察的特征中那样。

每个属性可以有不同的类型,例如:

  • 实数(Real)表示数值,如1.2。
  • 整数(Integer)表示没有小数部分数的数值,如5。
  • 标称(Nominal)表示分类数据,如“狗”和“猫”。
  • 字符串(String)表示单词组成的列表,如同这个句子本身。

在分类问题上,输出变量必须是标称的。对于回归问题,输出变量必须是实数。

Weka中的数据

Weka倾向于以ARFF格式加载数据。

(WEKA存储数据的格式是ARFF(Attribute-Relation File Format)文件,这是一种ASCII文本文件。二维表格存储ARFF文件中。译者注)

ARFF是表示属性关系文件格式的首字母缩略词。它是使用标题的CSV文件格式的扩展,提供有关列中数据类型的元数据。

例如,CSV格式经典的鸢尾花数据集的前几行如下所示:

代码语言:txt
复制
5.1,3.5,1.4,0.2,Iris-setosa
4.9,3.0,1.4,0.2,Iris-setosa
4.7,3.2,1.3,0.2,Iris-setosa
4.6,3.1,1.5,0.2,Iris-setosa
5.0,3.6,1.4,0.2,Iris-setosa

ARFF格式的文件如下所示:

代码语言:txt
复制
 @RELATION iris

@ATTRIBUTE sepallength REAL
@ATTRIBUTE sepalwidth REAL
@ATTRIBUTE petallength REAL
@ATTRIBUTE petalwidth REAL
@ATTRIBUTE class {Iris-setosa,Iris-versicolor,Iris-virginica}

@DATA
5.1,3.5,1.4,0.2,Iris-setosa
4.9,3.0,1.4,0.2,Iris-setosa
4.7,3.2,1.3,0.2,Iris-setosa
4.6,3.1,1.5,0.2,Iris-setosa
5.0,3.6,1.4,0.2,Iris-setosa

你可以看到指令以符号(@)开始,其中有一个表示数据集的名称(例如@RELATION iris),有一个指令来定义每个属性的名称和数据类型(例如@ATTRIBUTE sepallength REAL),并有一个指令指示原始数据的开始(例如@DATA)。

ARFF文件中以百分比符号(%)开头的行表示注释。

原始数据部分中具有问号(?)的值表示未知或缺失的值。格式支持数字和分类值(categorical values),如上面的鸢尾示例,但也支持日期和字符串值。

根据您的Weka安装(方式),您的Weka安装目录data /子目录下可能有或者没有一些默认的数据集。与Weka一起分发的这些默认数据集都是ARFF格式,并且具有.arff文件扩展名。

在ARFF-Viewer中加载CSV文件

您的数据可能不是ARFF格式的。

事实上,它更可能是逗号分隔值(Comma Separated Value,CSV)格式。这是一种简单的格式,其中数据在行和列的表格中进行布局,而逗号用于分隔行中的值。引号也可以用来包围值,特别是如果数据包含带空格的文本字符串。

CSV格式很容易从Microsoft Excel导出,所以一旦您可以将数据导入到Excel中,您可以轻松地将其转换为CSV格式。

Weka提供了一个方便的工具来加载CSV文件,并保存成ARFF。你只需要用你的数据集做一次(这样的操作)。

使用以下步骤,您可以将数据集从CSV格式转换为ARFF格式,并将其与Weka workbench结合使用。如果您没有方便的CSV文件,可以使用鸢尾花数据集。从UCI Machine Learning存储库 (传送门)中下载文件并将其保存到iris.csv的当前工作目录中。

1.启动Weka Chooser(选择器)。

Weka GUI选择器的屏幕截图

2.通过点击菜单中的“Tools”,选择“ArffViewer,来打开ARFF-Viewer”。

3.您将看到一个空的ARFF-Viewer窗口。

Weka ARFF Viewer

4.点击“File”菜单,在ARFF-Viewer中打开您的CSV文件,然后选择“Open”。导航到您当前的工作目录。将“Files of Type”过滤器更改为“CSV data files (*.csv)”。选择你的文件,然后点击“Open”按钮。

在ARFF Viewer中加载CSV

5.你现在应该可以看到你的CSV文件加载到ARFF-Viewer的一个示例样本。

6.通过点击“File”菜单并选择“Save as...”,以ARFF格式保存您的数据集。你需要输入带有.arff扩展名的文件名并单击“Save”按钮。

您现在可以将保存的.arff文件直接加载到Weka中。

请注意,ARFF-Viewer提供了在保存之前修改数据集的选项。例如,您可以更改值,更改属性的名称和更改其数据类型。

强烈建议您指定每个属性的名称,因为这将有助于稍后对数据进行分析。另外,确保每个属性的数据类型都是正确的。

在Weka Explorer中加载CSV文件

您也可以直接在Weka Explorer界面中加载您的CSV文件。

如果您急着想快速测试一个想法,这很方便。

本节介绍如何在Weka Explorer界面中加载CSV文件。您可以再次使用虹膜数据集,如果您没有加载CSV数据集,则练习。

1.启动Weka GUI Chooser(选择器)。

2.通过单击“资源管理器”按钮启动Weka资源管理器。

Weka资源管理器的屏幕截图

3.点击“Open file…”按钮。

4.导航到您当前的工作目录。将“Files of Type”更改为“CSV data files (*.csv)”。选择你的文件,然后点击“打开”按钮。

您可以直接用数据开始工作。您也可以通过点击“Save”按钮并输入文件名,以ARFF格式保存数据集。

使用Excel中的其他文件格式

如果您有其他格式的数据,请先将其加载到Microsoft Excel中。

以另一种格式(如CSV)这样使用不同的分隔符或固定宽度字段来获取数据是很常见的。Excel有强大的工具来加载各种格式的表格数据。使用这些工具,并首先将您的数据加载到Excel中。

将数据加载到Excel后,可以将其导出为CSV格式。然后,您可以直接或通过首先将其转换为ARFF格式在Weka中使用它。

资源

下面是一些额外的资源,你会发现这些资源对在Weka中使用CSV data进行工作非常有帮助。

概要

在这篇文章中,您发现了如何将您的CSV数据加载到Weka中进行机器学习。

具体来说,你了解到:

  • 关于ARFF文件格式以及Weka如何使用它来表示机器学习的数据集。
  • 如何使用ARFF-Viewer加载您的CSV数据并将其保存为ARFF格式。
  • 如何直接在Weka Explorer中加载CSV数据并将其用于建模。

如果你有关于本文中的Weka加载数据的任何问题?可以在评论中提出您的问题,我会尽我所能来回答。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • How To Load CSV Machine Learning Data in Weka
  • 如何在Weka中加载CSV机器学习数据
  • 如何在Weka中描述数据
  • Weka中的数据
  • 在ARFF-Viewer中加载CSV文件
  • 在Weka Explorer中加载CSV文件
  • 使用Excel中的其他文件格式
  • 资源
  • 概要
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档