"Bug or Mistake? [SOLVED]"

kuehn
kuehn New Altair Community Member
edited November 5 in Community Q&A
Hello,

I got a message from rapid-miner I don't understand.
The input data for the Extract Average Element is an emty set, so maybe it's that.
On the one hand I am confused because the message/expception covers a casting problem (see log below).
On the other hand it's difficult to understand because there is a handle exception element around the failed subprocess.

Jan 11, 2012 2:46:12 PM SEVERE: Process failed: operator cannot be executed (com.rapidminer.operator.IOObjectCollection cannot be cast to com.rapidminer.operator.valueseries.ValueSeries). Check the log messages...
Jan 11, 2012 2:46:12 PM SEVERE: Here:           Process[1] (Process)
          subprocess 'Main Process'
            +- Read MSSQL 2008 publn[1] (Read Database)
            +- Store[1] (Store)
            +- Read MSSQL 2008 citn[1] (Read Database)
            +- Store (2)[1] (Store)
            +- pat_publn_retrieve[1] (Retrieve)
            +- Collect[1] (Collect)
            +- Multiply (5)[1] (Multiply)
            +- Append (3)[1] (Append)
            +- Loop p in patent[1] (Loop Examples)
          subprocess 'Example Process'
            |     +- Retrieve[1] (Retrieve)
            |     +- Rename[1] (Rename)
            |     +- load esPatentSummaryDates (2)[1] (Handle Exception)
          subprocess 'Try'
            |     |  |  +- load esPatentSummaryDates[1] (Recall)
          subprocess 'Catch'
            |     +- Extract Macro[1] (Extract Macro)
            |     +- Filter Examples[1] (Filter Examples)
            |     +- Join[1] (Join)
            |     +- Handle Exception[1] (Handle Exception)
          subprocess 'Try'
            |     |  |  +- for pc in pcs (2)[1] (Loop Examples)
          subprocess 'Example Process'
            |     |  |        +- load esPatentCitationDates (3)[0] (Handle Exception)
          subprocess 'Try'
            |     |  |        |  |  +- load esPatentCitationDates (4)[0] (Recall)
          subprocess 'Catch'
            |     |  |        +- Extract Macro (3)[0] (Extract Macro)
            |     |  |        +- Filter Examples (3)[0] (Filter Examples)
            |     |  |        +- Multiply (6)[0] (Multiply)
            |     |  |        +- Select Attributes (4)[0] (Select Attributes)
            |     |  |        +- Select Attributes (5)[0] (Select Attributes)
            |     |  |        +- Generate ID (3)[0] (Generate ID)
            |     |  |        +- Generate ID (4)[0] (Generate ID)
            |     |  |        +- Join (3)[0] (Join)
            |     |  |        +- Generate Attributes (2)[0] (Generate Attributes)
            |     |  |        +- Select Attributes (6)[0] (Select Attributes)
            |     |  |        +- Collect (5)[0] (Collect)
            |     |  |        +- Append (4)[0] (Append)
            |     |  |        +- Multiply (7)[0] (Multiply)
            |     |  |        +- Collect (6)[0] (Collect)
            |     |  |        +- save esPatentCitationDates (2)[0] (Remember)
          subprocess 'Catch'
            |     |     +- Set Macro[0] (Set Macro)
            |     +- Print to Console[1] (Print to Console)
      ==>   |     +- Extract Average[1] (Extract Average)
            |     +- Append[0] (Append)
            |     +- Multiply (3)[0] (Multiply)
            |     +- Multiply (4)[0] (Multiply)
            |     +- save esPatentSummaryDates[0] (Remember)
            +- Collect (4)[0] (Collect)
            +- Extract Average (2)[0] (Extract Average)

if the input is not an empty set thereI got another message :
Jan 11, 2012 3:18:04 PM SEVERE: Process failed: operator cannot be executed (com.rapidminer.example.set.SimpleExampleSet cannot be cast to com.rapidminer.operator.valueseries.ValueSeries).
This message makes sense.

Thanks for your help!

Answers

  • MariusHelf
    MariusHelf New Altair Community Member
    Hi Uwe,

    the Extract Average operator is part of the Value Series extension and only capable of handling Value Series. You however passed an IOObjectCollection to it (probably you see a double line connected to the operator in the process). It would be handy if you had posted your process, so we could give you a more detailed answer. If you intended to calculate the average performance, you should you the Average operator instead of Extract Average.

    Best, Marius
  • kuehn
    kuehn New Altair Community Member
    Hi Marius,

    thx for your answer.
    the average operator requires in my opinion 2 different sets, but in the given example i will get the arithmetic mean value for a list off values.

    I got a solution for my problem, but I had to reorganize the process.

    I wish you a nice  day.

    Uwe