Domanda

Sono stato con RapidMiner e ha creato una serie di processi che preforme un insieme standard di compiti. Ora, voglio che consentono all'utente di impostare in modo dinamico i parametri di un processo alla partenza.

Ad esempio, quando si scrive un file CSV, voglio richiedere all'utente di digitare una stringa contenente la posizione in cui deve essere salvato attraverso qualche prompt (sia all'inizio dello script, o in qualche altro momento durante il processo.

Questo è possibile tramite RapidMiner, o dovrei essere la creazione di alcuni script per generare e Runt ha elaborare al volo?

È stato utile?

Soluzione

Per modificare i parametri che vogliate passare ai processi, credo che è necessario modificare il file XML del vostro processo. Ad esempio,

<?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>

Si può vedere che per l'operatore write_csv, il valore contiene il percorso del file da scrivere. La modifica dei parametri come lei comporterebbe scrivere uno script per ottenere i valori da parte dell'utente, modificare i valori corrispondenti nel file XML a questi valori desiderati e poi gettare il processo in RapidMiner.

Altri suggerimenti

E 'possibile creare uno script Groovy che permetterà all'utente di inserire richieste in fase di esecuzione. Questo evita di dover modificare il processo ogni volta.

Ecco un esempio sulla base di un originale dal forum RapidMiner.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top