<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<link rel="canonical" href="https://ignite.apache.org/releases/2.9.0/javadoc/org/apache/ignite/ml/tree/randomforest/data/package-frame.html" />
<META NAME="ROBOTS" CONTENT="NOINDEX">

<!-- Generated by javadoc (1.8.0_241) on Thu Oct 15 12:23:37 MSK 2020 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>org.apache.ignite.ml.tree.randomforest.data (Ignite 2.9.0)</title>
<meta name="date" content="2020-10-15">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
<link rel='shortcut icon' href='https://ignite.apache.org/favicon.ico'/>

<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-61232409-1', 'auto');
  ga('send', 'pageview');

</script></head>

<body>
<h1 class="bar"><a href="../../../../../../../org/apache/ignite/ml/tree/randomforest/data/package-summary.html" target="classFrame">org.apache.ignite.ml.tree.randomforest.data</a></h1>
<div class="indexContainer">
<h2 title="Classes">Classes</h2>
<ul title="Classes">
<li><a href="FeaturesCountSelectionStrategies.html" title="class in org.apache.ignite.ml.tree.randomforest.data" target="classFrame">FeaturesCountSelectionStrategies</a></li>
<li><a href="NodeId.html" title="class in org.apache.ignite.ml.tree.randomforest.data" target="classFrame">NodeId</a></li>
<li><a href="NodeSplit.html" title="class in org.apache.ignite.ml.tree.randomforest.data" target="classFrame">NodeSplit</a></li>
<li><a href="TreeNode.html" title="class in org.apache.ignite.ml.tree.randomforest.data" target="classFrame">TreeNode</a></li>
<li><a href="TreeRoot.html" title="class in org.apache.ignite.ml.tree.randomforest.data" target="classFrame">TreeRoot</a></li>
</ul>
<h2 title="Enums">Enums</h2>
<ul title="Enums">
<li><a href="TreeNode.Type.html" title="enum in org.apache.ignite.ml.tree.randomforest.data" target="classFrame">TreeNode.Type</a></li>
</ul>
</div>
</body>
</html>
