web-dev-qa-db-fra.com

Conversion de CSV en ARFF avec weka

J'ai essayé d'obtenir cet ensemble de données http://archive.ics.uci.edu/ml/datasets/Communities+and+Crime+Unnormalized dans Weka et je n'ai pas eu de chance. Je l'ai converti au format CSV, puis chargé dans Weka, puis j'ai essayé de le convertir au format ARFF, tout en me donnant toujours l'erreur "attribute names are not unique"

De plus, dois-je répartir l'ensemble de données d'apprentissage à partir d'un ensemble de données de test ou les conserver ensemble?

15
LumberJack

Vous pouvez également utiliser ArffViewer (Outils -> ArffViewer ou Ctrl + A). Ensuite, ouvrez votre fichier CSV.

Ensuite, allez dans Fichier -> Enregistrer sous ... et sélectionnez Fichiers de données Arff (doit être sélectionné par défaut).

Notez que vos champs doivent être séparés par une virgule et non par un point-virgule. 

28
EsTeGe

Certains convertisseurs sont implémentés dans WEKA. Voici les pages de l'API relatives à ce sujet: http://weka.sourceforge.net/doc.stable/weka/core/converters/package-summary.html

Par exemple, voici comment convertir un fichier CSV en fichier ARFF:

Java -cp /path/to/weka.jar weka.core.converters.CSVLoader filename.csv > filename.arff
13
arutaku

Téléchargez votre fichier au format .CSV vers this . À partir de là, votre format .CSV sera converti au format WEKA .arff. Une fois que c'est fait, récupérez le fichier .arff dans l'outil Weka. Vous pouvez maintenant procéder à l'analyse de vos données. 

5
Dulith De Costa

Vous avez besoin de champs d’en-tête dans le fichier csv. Vous devez ajouter attr0, attr1, ..., des étiquettes dans le fichier csv à la première ligne.

2

Je n'ai eu aucun problème. Ok, fais ce qui suit. Dans la page Web que vous avez spécifiée,

  • copier le segment entre "en-tête .arff pour weka:" et "Documents pertinents".
  • collez-le sur un fichier .txt
  • ouvrez le fichier de données à cet emplacement
  • copiez les instances et ajoutez-les à votre fichier .txt juste après la section @data
  • enregistrer le fichier .txt en tant que fichier .arff

Vous êtes maintenant prêt à partir.

dois-je créer un jeu de données d'apprentissage à partir d'un jeu de données de test ou les laisser ensemble?

Cela dépend de votre méthode de classification. Si vous choisissez un CV 10 fois, laissez-les ensemble. Si vous souhaitez utiliser la méthode convention, séparez-les. Encore une fois, tout dépend de votre méthodologie.

1
Rushdi Shams

Pour convertir .csv au format de fichier .arff à utiliser dans Weka .Remarque: Le fichier .csv doit être correct, sinon il ne sera pas converti en fichier .arff. Il ne doit contenir aucune valeur NULL dans les colonnes . Téléchargez le fichier weka core jar . Dans Eclipse -> Configure Build path, ajoutez le fichier weka core jar, écrivez la ligne de code ci-dessous et exécutez le code:

CSVToArff.Java

import weka.core.Instances;
import weka.core.converters.ArffSaver;
import weka.core.converters.CSVLoader;

import Java.io.File;

public class CSVToArff {

   public static void main(String[] args) throws Exception {


    // load CSV
    CSVLoader loader = new CSVLoader();
    loader.setSource(new File("Provide the input file location (.csv) "));
    Instances data = loader.getDataSet();

    // save ARFF
    ArffSaver saver = new ArffSaver();
    saver.setInstances(data);
    saver.setFile(new File("Provide the output file location (.arff) ");
    saver.writeBatch();
    // .arff file will be created in the output location
  }
}
0
Elakia Nagarajan

Peut-être que ce convertisseur en ligne de CSV à ARFF peut être utile?

http://slavnik.fe.uni-lj.si/markot/csv2arff/csv2arff.php

0
markotka