Question

J'utilise RapidMiner et créé une série de processus qui préforme un ensemble standard de tâches. Maintenant, je veux permettre à l'utilisateur de définir dynamiquement les paramètres d'un processus au début.

Par exemple, lors de l'écriture d'un fichier CSV, je veux inviter l'utilisateur à saisir une chaîne contenant l'emplacement où il doit être enregistré par une invite (soit au début du script, ou à une autre étape du processus.

Est-ce possible via RapidMiner, ou devrais-je créer un script pour générer et Runt il traite à la volée?

Était-ce utile?

La solution

Pour modifier les paramètres que vous souhaitez passer au vos processus, je crois que vous devez modifier le fichier .xml de votre processus. Par exemple,

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<process version="5.0">
  <context>
    <input/>
    <output/>
    <macros/>
  </context>
  <operator activated="true" class="process" compatibility="5.0.10" expanded="true" name="Process">
    <process expanded="true" height="145" width="212">
      <operator activated="true" class="generate_data" compatibility="5.0.10" expanded="true" height="60" name="Generate Data" width="90" x="112" y="30">
        <parameter key="number_examples" value="10"/>
      </operator>
      <operator activated="true" class="write_csv" compatibility="5.0.10" expanded="true" height="60" name="Write CSV" width="90" x="271" y="39">
        <parameter key="csv_file" value="C:\Users\wessel\Desktop\gendata.csv"/>
      </operator>
      <connect from_op="Generate Data" from_port="output" to_op="Write CSV" to_port="input"/>
      <connect from_op="Write CSV" from_port="through" to_port="result 1"/>
      <portSpacing port="source_input 1" spacing="0"/>
      <portSpacing port="sink_result 1" spacing="0"/>
      <portSpacing port="sink_result 2" spacing="0"/>
    </process>
  </operator>
</process>

Vous pouvez voir que pour l'opérateur de write_csv, la valeur contient le chemin du fichier à écrire à. Modification des paramètres que vous décrivez impliquerait l'écriture d'un script pour obtenir les valeurs de l'utilisateur, modifier les valeurs correspondantes dans le fichier .xml à ces valeurs souhaitées, puis lancer le processus à RapidMiner.

Autres conseils

Il est possible de créer un script Groovy qui permettra à un utilisateur d'entrer des invites au moment de l'exécution. Cela évite d'avoir à modifier le processus à chaque fois.

Voici un exemple basé sur un original du forum RapidMiner.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top