question: public IndTestProbabilisticVerbose ( DataSet dataSet , PrintWriter out , IndTestDSep dsepTest ) { this . out = out ; this . dsepTest = dsepTest ; if ( ! dataSet . isDiscrete ( ) ) { throw new IllegalArgumentException ( "Not a discrete data set." ) ; } this . data = dataSet ; int [ ] nodeDimensions = new int [ dataSet . getNumColumns ( ) + 2 ] ; for ( int j = 0 ; j < dataSet . getNumColumns ( ) ; j ++ ) { DiscreteVariable variable = ( DiscreteVariable ) ( dataSet . getVariable ( j ) ) ; int numCategories = variable . getNumCategories ( ) ; nodeDimensions [ j + 1 ] = numCategories ; } int [ ] [ ] cases = new int [ dataSet . getNumRows ( ) + 1 ] [ dataSet . getNumColumns ( ) + 2 ] ; for ( int i = 0 ; i < dataSet . getNumRows ( ) ; i ++ ) { for ( int j = 0 ; j < dataSet . getNumColumns ( ) ; j ++ ) { cases [ i + 1 ] [ j + 1 ] = dataSet . getInt ( i , j ) + 1 ; } } bci = new BCInference ( cases , nodeDimensions ) ; nodes = dataSet . getVariables ( ) ; indices = new HashMap < > ( ) ; for ( int i = 0 ; i < nodes . size ( ) ; i ++ ) { indices . put ( nodes . get ( i ) , i ) ; } this . H = new HashMap < > ( ) ; }
target:  Initializes the test using a discrete data sets.