private void findLargeCarItemSets() throws Exception {
  ArrayList<Object> kMinusOneSets, kSets;
  Hashtable<ItemSet,Integer> hashtable;
  int necSupport, i=0;
  double nextMinSupport=m_minSupport * m_instances.numInstances();
  double nextMaxSupport=m_upperBoundMinSupport * m_instances.numInstances();
  if (Math.rint(nextMinSupport) == nextMinSupport) {
    necSupport=(int)nextMinSupport;
  }
 else {
    necSupport=Math.round((float)(nextMinSupport + 0.5));
  }
  if (Math.rint(nextMaxSupport) == nextMaxSupport) {
  }
 else {
    Math.round((float)(nextMaxSupport + 0.5));
  }
  kSets=LabeledItemSet.singletons(m_instances,m_onlyClass);
  LabeledItemSet.upDateCounters(kSets,m_instances,m_onlyClass);
  kSets=LabeledItemSet.deleteItemSets(kSets,necSupport,m_instances.numInstances());
  if (kSets.size() == 0) {
    return;
  }
  do {
    m_Ls.add(kSets);
    kMinusOneSets=kSets;
    kSets=LabeledItemSet.mergeAllItemSets(kMinusOneSets,i,m_instances.numInstances());
    hashtable=LabeledItemSet.getHashtable(kMinusOneSets,kMinusOneSets.size());
    kSets=LabeledItemSet.pruneItemSets(kSets,hashtable);
    LabeledItemSet.upDateCounters(kSets,m_instances,m_onlyClass);
    kSets=LabeledItemSet.deleteItemSets(kSets,necSupport,m_instances.numInstances());
    i++;
  }
 while (kSets.size() > 0);
}

private void findLargeCarItemSets ( ) throws Exception { ArrayList < Object > kMinusOneSets , kSets ; Hashtable < ItemSet , Integer > hashtable ; int necSupport , i = 0 ; double nextMinSupport = m_minSupport * m_instances . numInstances ( ) ; double nextMaxSupport = m_upperBoundMinSupport * m_instances . numInstances ( ) ; if ( Math . rint ( nextMinSupport ) == nextMinSupport ) { necSupport = ( int ) nextMinSupport ; } else { necSupport = Math . round ( ( float ) ( nextMinSupport + 0.5 ) ) ; } if ( Math . rint ( nextMaxSupport ) == nextMaxSupport ) { } else { Math . round ( ( float ) ( nextMaxSupport + 0.5 ) ) ; } kSets = LabeledItemSet . singletons ( m_instances , m_onlyClass ) ; LabeledItemSet . upDateCounters ( kSets , m_instances , m_onlyClass ) ; kSets = LabeledItemSet . deleteItemSets ( kSets , necSupport , m_instances . numInstances ( ) ) ; if ( kSets . size ( ) == 0 ) { return ; } do { m_Ls . add ( kSets ) ; kMinusOneSets = kSets ; kSets = LabeledItemSet . mergeAllItemSets ( kMinusOneSets , i , m_instances . numInstances ( ) ) ; hashtable = LabeledItemSet . getHashtable ( kMinusOneSets , kMinusOneSets . size ( ) ) ; kSets = LabeledItemSet . pruneItemSets ( kSets , hashtable ) ; LabeledItemSet . upDateCounters ( kSets , m_instances , m_onlyClass ) ; kSets = LabeledItemSet . deleteItemSets ( kSets , necSupport , m_instances . numInstances ( ) ) ; i ++ ; } while ( kSets . size ( ) > 0 ) ; }
method that finds all large itemsets for class association rules for the given set of instances .
