Why am I getting a NullPointerException?

Draven
Draven New Altair Community Member
edited November 5 in Community Q&A

I'm having trouble identifying an error that tells me there are no obvious errors and to look at the log. All of my data is either integer or binominal. Everyone else in my class was able to use the data, whereas I encountered this problem. I'm on version 10.2. 

Here's the log:

SEVERE: Process failed: operator cannot be executed. Check the log messages...

SEVERE: Here: 

SEVERE:           Process[1] (Process)

SEVERE:            subprocess 'Main Process'

SEVERE:              +- Retrieve EastWestAirlinesNN+_1_-1[1] (Retrieve)

SEVERE:        ==>   +- Cross Validation[1] (Cross Validation)

SEVERE:            subprocess 'Training'

SEVERE:                 |  +- Replace Missing Values[0] (Replace Missing Values)

SEVERE:                 |  +- Neural Net[0] (Neural Net)

SEVERE:            subprocess 'Testing'

SEVERE:                    +- Apply Model[0] (Apply Model)

SEVERE:                    +- Performance (2)[0] (Performance (Binominal Classification))

SEVERE: java.lang.NullPointerException
Tagged:

Best Answer

  • ClaudioKeck
    ClaudioKeck
    Altair Employee
    Answer ✓
    Hi, Can you try the process again with having the replace missing values operator outside the cross validation? this worked for me. 

Answers

  • ClaudioKeck
    ClaudioKeck
    Altair Employee
    Hi @Draven

    Could you please share the Process XML and if possible the data with us? happy to take a look into process.
  • MartinLiebig
    MartinLiebig
    Altair Employee
    Hi,
    please also check the rapidminer-studio.log for the stack trace.
    Best,
    Martin
  • Draven
    Draven New Altair Community Member
    I've attached the data and process XML. 

    Here's the stack trace I found in the rapidminer-studio.log file, though I don't know how to interpret it:

    Oct 26, 2023 9:20:33 AM com.rapidminer.gui.ProcessThread logProcessTreeList
    SEVERE: Here: 
    Oct 26, 2023 9:20:33 AM com.rapidminer.gui.ProcessThread logProcessTreeList
    SEVERE:           Process[1] (Process)
    Oct 26, 2023 9:20:33 AM com.rapidminer.gui.ProcessThread logProcessTreeList
    SEVERE:            subprocess 'Main Process'
    Oct 26, 2023 9:20:33 AM com.rapidminer.gui.ProcessThread logProcessTreeList
    SEVERE:              +- Retrieve EastWestAirlinesNN+_1_-1[1] (Retrieve)
    Oct 26, 2023 9:20:33 AM com.rapidminer.gui.ProcessThread logProcessTreeList
    SEVERE:        ==>   +- Cross Validation[1] (Cross Validation)
    Oct 26, 2023 9:20:33 AM com.rapidminer.gui.ProcessThread logProcessTreeList
    SEVERE:            subprocess 'Training'
    Oct 26, 2023 9:20:33 AM com.rapidminer.gui.ProcessThread logProcessTreeList
    SEVERE:                 |  +- Replace Missing Values[0] (Replace Missing Values)
    Oct 26, 2023 9:20:33 AM com.rapidminer.gui.ProcessThread logProcessTreeList
    SEVERE:                 |  +- Neural Net[0] (Neural Net)
    Oct 26, 2023 9:20:33 AM com.rapidminer.gui.ProcessThread logProcessTreeList
    SEVERE:            subprocess 'Testing'
    Oct 26, 2023 9:20:33 AM com.rapidminer.gui.ProcessThread logProcessTreeList
    SEVERE:                    +- Apply Model[0] (Apply Model)
    Oct 26, 2023 9:20:33 AM com.rapidminer.gui.ProcessThread logProcessTreeList
    SEVERE:                    +- Performance[0] (Performance (Binominal Classification))
    Oct 26, 2023 9:20:33 AM com.rapidminer.gui.ProcessThread run
    SEVERE: java.lang.NullPointerException
    java.lang.NullPointerException
    at com.rapidminer.example.set.StratifiedPartitionBuilder$ExampleIndex.compareTo(StratifiedPartitionBuilder.java:71)
    at com.rapidminer.example.set.StratifiedPartitionBuilder$ExampleIndex.compareTo(StratifiedPartitionBuilder.java:58)
    at java.base/java.util.ComparableTimSort.binarySort(Unknown Source)
    at java.base/java.util.ComparableTimSort.sort(Unknown Source)
    at java.base/java.util.Arrays.sort(Unknown Source)
    at java.base/java.util.Arrays.sort(Unknown Source)
    at java.base/java.util.ArrayList.sort(Unknown Source)
    at java.base/java.util.Collections.sort(Unknown Source)
    at com.rapidminer.example.set.StratifiedPartitionBuilder.createPartitionFromIndices(StratifiedPartitionBuilder.java:201)
    at com.rapidminer.example.set.ColumnStratifiedPartitionBuilder.createEqualPartition(ColumnStratifiedPartitionBuilder.java:125)
    at com.rapidminer.example.set.ColumnStratifiedPartitionBuilder.createPartition(ColumnStratifiedPartitionBuilder.java:109)
    at com.rapidminer.example.set.ImmutablePartition.<init>(ImmutablePartition.java:74)
    at com.rapidminer.example.set.TableSplitter.<init>(TableSplitter.java:195)
    at com.rapidminer.example.set.TableSplitterWithCompatibility.create(TableSplitterWithCompatibility.java:69)
    at com.rapidminer.extension.concurrency.operator.validation.CrossValidationOperator.doTableWork(CrossValidationOperator.java:371)
    at com.rapidminer.extension.concurrency.operator.validation.CrossValidationOperator.doWork(CrossValidationOperator.java:249)
    at com.rapidminer.operator.Operator.execute(Operator.java:1024)
    at com.rapidminer.operator.execution.SimpleUnitExecutor.execute(SimpleUnitExecutor.java:77)
    at com.rapidminer.operator.ExecutionUnit$2.run(ExecutionUnit.java:804)
    at com.rapidminer.operator.ExecutionUnit$2.run(ExecutionUnit.java:799)
    at java.base/java.security.AccessController.doPrivileged(Native Method)
    at com.rapidminer.operator.ExecutionUnit.execute(ExecutionUnit.java:799)
    at com.rapidminer.operator.OperatorChain.doWork(OperatorChain.java:423)
    at com.rapidminer.operator.Operator.execute(Operator.java:1024)
    at com.rapidminer.Process.executeRoot(Process.java:1476)
    at com.rapidminer.Process.lambda$executeRootInPool$5(Process.java:1452)
    at com.rapidminer.studio.concurrency.internal.AbstractConcurrencyContext$AdaptedCallable.exec(AbstractConcurrencyContext.java:362)
    at java.base/java.util.concurrent.ForkJoinTask.doExec(Unknown Source)
    at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(Unknown Source)
    at java.base/java.util.concurrent.ForkJoinPool.scan(Unknown Source)
    at java.base/java.util.concurrent.ForkJoinPool.runWorker(Unknown Source)
    at java.base/java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)
  • ClaudioKeck
    ClaudioKeck
    Altair Employee
    Answer ✓
    Hi, Can you try the process again with having the replace missing values operator outside the cross validation? this worked for me. 
  • Draven
    Draven New Altair Community Member
    Worked for me as well, thanks! Any idea why that would create this error?