【问题标题】:appending two files in Weka在 Weka 中附加两个文件
【发布时间】:2021-11-12 23:22:03
【问题描述】:

我有两个数据集。基本上,它们是两个 .arff 文件。

Fold1.arff 包含:

@relation iris

@attribute sepallength numeric
@attribute sepalwidth numeric
@attribute petallength numeric
@attribute petalwidth numeric
@attribute class {Iris-setosa,Iris-versicolor,Iris-virginica}

@data
5.1,3.5,1.4,0.2,Iris-setosa
5.4,3.7,1.5,0.2,Iris-setosa
5.4,3.4,1.7,0.2,Iris-setosa
4.8,3.1,1.6,0.2,Iris-setosa
5,3.5,1.3,0.3,Iris-setosa
7,3.2,4.7,1.4,Iris-versicolor
5,2,3.5,1,Iris-versicolor
5.9,3.2,4.8,1.8,Iris-versicolor
5.5,2.4,3.8,1.1,Iris-versicolor
5.5,2.6,4.4,1.2,Iris-versicolor
6.3,3.3,6,2.5,Iris-virginica
6.5,3.2,5.1,2,Iris-virginica
6.9,3.2,5.7,2.3,Iris-virginica
7.4,2.8,6.1,1.9,Iris-virginica
6.7,3.1,5.6,2.4,Iris-virginica

Fold2.arff 包含

@relation iris

@attribute sepallength numeric
@attribute sepalwidth numeric
@attribute petallength numeric
@attribute petalwidth numeric
@attribute class {Iris-setosa,Iris-versicolor,Iris-virginica}

@data
4.9,3,1.4,0.2,Iris-setosa
4.8,3.4,1.6,0.2,Iris-setosa
5.1,3.7,1.5,0.4,Iris-setosa
5.4,3.4,1.5,0.4,Iris-setosa
4.5,2.3,1.3,0.3,Iris-setosa
6.4,3.2,4.5,1.5,Iris-versicolor
5.9,3,4.2,1.5,Iris-versicolor
6.1,2.8,4,1.3,Iris-versicolor
5.5,2.4,3.7,1,Iris-versicolor
6.1,3,4.6,1.4,Iris-versicolor
5.8,2.7,5.1,1.9,Iris-virginica
6.4,2.7,5.3,1.9,Iris-virginica
5.6,2.8,4.9,2,Iris-virginica
7.9,3.8,6.4,2,Iris-virginica
6.9,3.1,5.1,2.3,Iris-virginica

现在我尝试使用以下命令附加它们:

java weka.core.Instances append d:\fold1.arff d:\fold2.arff > d:\result.arff

我从 Weka 简单 CLI 字段运行命令。

我收到了这个错误:

Usage:
weka.core.Instances help
    Prints this help
weka.core.Instances <filename>
    Outputs dataset statistics
weka.core.Instances merge <filename1> <filename2>
    Merges the datasets (must have same number of rows).
    Generated dataset gets output on stdout.
weka.core.Instances append <filename1> <filename2>
    Appends the second dataset to the first (must have same number of attributes).
    Generated dataset gets output on stdout.
weka.core.Instances headers <filename1> <filename2>
    Compares the structure of the two datasets and outputs whether they
    differ or not.
weka.core.Instances randomize <seed> <filename>
    Randomizes the dataset and outputs it on stdout.

我的两个文件的行数相同,如您从上面的示例中看到的那样。那为什么result.arff文件不能创建呢?

谢谢。

【问题讨论】:

  • 对我来说很好(在 Linux 下)。也许尝试正斜杠?

标签: append weka


【解决方案1】:

我可以在您的两个文件中看到属性相同并且具有相同数量的属性(总共 5 个)

从official documentation 来看,追加的当前语法是

    weka.core.Instances append <filename1> <filename2>

这会将文件名 2 附加到文件名 1。无需指定输出文件。也就是说,所有更改都存储在 filename1 本身中

注意 最好用引号(单引号或双引号)传递文件名,尤其是在文件名有空格的情况下(例如,fold 1.arff 而不是 fold1.arff)

      java weka.core.Instances append “d:\fold1.arff” “d:\fold2.arff”

在少数语言中,黑斜线是转义序列,因此必须使用两次

      java weka.core.Instances append “d:\\fold1.arff” “d:\\fold2.arff”

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-05
    • 2016-07-14
    • 2013-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多