Vous pouvez charger l'interface graphique WEKA étapes partiellement RWeka ou avec des outils de ligne de commande Weka qui sont beaucoup plus étendues que les fonctions disponibles dans RWeka. Vous pouvez donc étendre le RWeka avec les commandes de ligne de commande via la commande système dans R. Heureusement, les paramètres de WEKA GUI et de la ligne de commande WEKA sont les mêmes. Je recommande d'extraire le weka-src.jar
avec jar xf weka-src.jar
pour lire la source.
Il existe de nombreuses fonctions pour multifiltre
java weka.filters.MultiFilter --help
java weka.filters.unsupervised.attribute.PartitionedMultiFilter --help
où le second vous permet de spécifier la plage d'attributs. Sinon, ils semblent être identiques.
Ensuite, vous pouvez lancer votre premier filtre discrétiser avec
java weka.filters.unsupervised.attribute.Discretize -F -B 20 -M -1.0 -R 27 -i yourFile.arff
puis la sortie au prochain Discretize
, éventuellement à NumericTransform
et Resample
. La ligne de commande fournit des instructions sur les fabuleuses commandes de la manière suivante
java weka.filters.unsupervised.attribute.NumericTransform --help
java weka.filters.unsupervised.attribute.Remove --help
java weka.filters.unsupervised.instance.Resample --help
java weka.filters.supervised.instance.Resample --help
et vous pouvez les consulter à partir de la structure de répertoire ou l'index.
RWeka
paquet RWeka fournit les fonctions
- Discrétiser()
- Normaliser()
- make_Weka_filter() pour créer des interfaces de R à filtres Weka
et il n'y a pas NumericTransform et Remo fonctions ve. Vous devez utiliser leurs arguments de manière non directement en copiant-collant un code java depuis WEKA GUI. Peut-être, une solution pourrait être d'utiliser la commande système et d'exécuter le code Java avec, sans avoir besoin d'apprendre le RWeka lui-même. Il semble y avoir un certain écart entre l'interface graphique de WEKA et le paquet R.
Courir Weka sur Commandline
Même si les commandes manquent par l'interface RWeka, vous pouvez également utiliser le système de commandes dans l'affaire R.Par exemple, vous pouvez exécuter la commande supprimer
java weka.filters.unsupervised.attribute.Remove -i yourfile.arff
tels que
system("java weka.filters.unsupervised.attribute.Remove -i yourfile.arff")
J'ai la configuration suivante here afin que nous puissions exécuter Discrétiser avec le manière suivante.
$ cat $WEKAINSTALL/data/iris.arff |tail
6.8,3.2,5.9,2.3,Iris-virginica
6.7,3.3,5.7,2.5,Iris-virginica
6.7,3.0,5.2,2.3,Iris-virginica
6.3,2.5,5.0,1.9,Iris-virginica
6.5,3.0,5.2,2.0,Iris-virginica
6.2,3.4,5.4,2.3,Iris-virginica
5.9,3.0,5.1,1.8,Iris-virginica
%
%
%
$ java weka.filters.unsupervised.attribute.Discretize -i $WEKAINSTALL/data/iris.arff |tail
'\'(6.46-6.82]\'','\'(2.96-3.2]\'','\'(5.13-5.72]\'','\'(2.26-inf)\'',Iris-virginica
'\'(6.82-7.18]\'','\'(2.96-3.2]\'','\'(4.54-5.13]\'','\'(2.26-inf)\'',Iris-virginica
'\'(5.74-6.1]\'','\'(2.48-2.72]\'','\'(4.54-5.13]\'','\'(1.78-2.02]\'',Iris-virginica
'\'(6.46-6.82]\'','\'(2.96-3.2]\'','\'(5.72-6.31]\'','\'(2.26-inf)\'',Iris-virginica
'\'(6.46-6.82]\'','\'(3.2-3.44]\'','\'(5.13-5.72]\'','\'(2.26-inf)\'',Iris-virginica
'\'(6.46-6.82]\'','\'(2.96-3.2]\'','\'(5.13-5.72]\'','\'(2.26-inf)\'',Iris-virginica
'\'(6.1-6.46]\'','\'(2.48-2.72]\'','\'(4.54-5.13]\'','\'(1.78-2.02]\'',Iris-virginica
'\'(6.46-6.82]\'','\'(2.96-3.2]\'','\'(5.13-5.72]\'','\'(1.78-2.02]\'',Iris-virginica
'\'(6.1-6.46]\'','\'(3.2-3.44]\'','\'(5.13-5.72]\'','\'(2.26-inf)\'',Iris-virginica
'\'(5.74-6.1]\'','\'(2.96-3.2]\'','\'(4.54-5.13]\'','\'(1.78-2.02]\'',Iris-virginica
$
Quelques informations utiles
Use Weka in your Java code
Télécharger la version Developer Linux, décompressez et lire le README avec de nombreux exemples fabuleux sur l'utilisation de WEKA en particulier sur la ligne de commande .
Wiki here
Peut-être pas pertinent: Generating source code from WEKA classes