Tag: arff

如何将属性类型更改为String(WEKA – CSV到ARFF)

我正在尝试使用WEKA库制作SMS SPAM分类器。 我有一个带有“标签”和“文本”标题的CSV文件。 当我使用下面的代码时,它会创建一个包含两个属性的ARFF文件: @attribute label {ham,spam} @attribute text {‘Go until jurong point’,’Ok lar…’, etc.} 目前,似乎text属性被格式化为名义属性,每个消息的文本都是一个值。 但是我需要text属性是一个String属性,而不是所有实例中所有文本的列表。 将text属性作为String将允许我使用StringToWordVectorfilter来训练分类器。 // load CSV CSVLoader loader = new CSVLoader(); loader.setSource(new File(args[0])); Instances data = loader.getDataSet(); // save ARFF ArffSaver saver = new ArffSaver(); saver.setInstances(data); saver.setFile(new File(args[1])); saver.setDestination(new File(args[1])); saver.writeBatch(); 我知道我可以像这样创建一个String属性: Attribute tmp = new Attribute(“tmp”, (FastVector) null); 但我不知道如何替换当前属性,或者在读取CSV之前设置属性类型。 […]

如何在java中从数组创建ARFF文件?

我想得到java中两个数组所代表的xy对的加权线性回归系数。 我已经注意到了weka,但它在’LinearRegression’类中询问了一个’Instances’类对象。 要创建“Instances”类文件,需要包含数据的ARFF文件。 我遇到过使用FastVector类的解决方案,但现在已经在最新的weka版本中弃用了。 如何为xy对创建一个ARFF文件,并在java中用数组表示相应的权重? 这是我的代码基于Baz的答案。 它在最后一行“lr.buildClassifier(newDataset)”上给出一个例外 – Thread [main](Suspended(exceptionUnassignedClassException)) Capabilities.testWithFail(Instances)行:1302。 这是代码 – public static void test() throws Exception { double[][] data = {{4058.0, 4059.0, 4060.0, 214.0, 1710.0, 2452.0, 2473.0, 2474.0, 2475.0, 2476.0, 2477.0, 2478.0, 2688.0, 2905.0, 2906.0, 2907.0, 2908.0, 2909.0, 2950.0, 2969.0, 2970.0, 3202.0, 3342.0, 3900.0, 4007.0, 4052.0, 4058.0, 4059.0, 4060.0}, {19.0, 20.0, 21.0, […]

jAudio Feature Extractor:Null Exception

我的项目是创建一个Android应用程序,可以执行音频文件的function提取和分类。 首先,我正在创建一个Java应用程序作为测试运行。 我正在尝试使用jAudio的function提取程序包从音频文件中提取音频function。 作为入门者,我想输入.wav文件并对该文件运行特征提取操作,然后将结果存储为.ARFF文件。 但是,我从项目中的包中得到以下NullPointerexception错误: Exception in thread “main” java.lang.NullPointerException at java.io.DataOutputStream.writeBytes(Unknown Source) at jAudioFeatureExtractor.jAudioTools.FeatureProcessor.writeValuesARFFHeader(FeatureProcessor.java:853) at jAudioFeatureExtractor.jAudioTools.FeatureProcessor.(FeatureProcessor.java:258) at jAudioFeatureExtractor.DataModel.extract(DataModel.java:308) at Mfccarffwriter.main(Mfccarffwriter.java:70) 最初我认为这是一个文件权限问题(即,由于缺少权限,程序不允许编写文件),但即使在向Eclipse 4.2.2授予各种权限之后(我正在运行Windows 7, 64位版本),我仍然得到NullException错误。 以下给出了违规exception源自的包裹代码: /** * Write headers for an ARFF file. If saving for overall features, this must * be postponed until the overall features have been calculated. If this a * […]

多波段图像光栅到RGB

我有一个图像数据集,它是一个arff格式的多波段数据集。 它看起来像这样: 8.3000000e+001 9.3000000e+001 9.6000000e+001 7.5000000e+001 1.0000000e+000 8.3000000e+001 9.3000000e+001 9.6000000e+001 7.5000000e+001 1.0000000e+000 8.3000000e+001 9.3000000e+001 9.6000000e+001 7.5000000e+001 1.0000000e+000 8.3000000e+001 9.3000000e+001 9.6000000e+001 7.5000000e+001 1.0000000e+000 7.4000000e+001 8.4000000e+001 8.6000000e+001 7.1000000e+001 1.0000000e+000 7.4000000e+001 8.4000000e+001 8.6000000e+001 7.1000000e+001 1.0000000e+000 7.4000000e+001 8.4000000e+001 8.6000000e+001 7.1000000e+001 1.0000000e+000 7.4000000e+001 8.4000000e+001 8.6000000e+001 7.1000000e+001 1.0000000e+000 前4个属性指定像素的多波段值,最后一个属性指定类标签。 是否可以将其转换为RGB格式? 我有java代码根据RGB值对图像进行分类。