

<!DOCTYPE html>

<html lang="en-US">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=Edge">

  <link rel="stylesheet" href="/ds/assets/css/just-the-docs-default.css">

  <link rel="stylesheet" href="/ds/assets/css/just-the-docs-head-nav.css" id="jtd-head-nav-stylesheet">

  <style id="jtd-nav-activation">
  
    .site-nav ul li a {
      background-image: none;
    }

  </style>

  

  
    <script src="/ds/assets/js/vendor/lunr.min.js"></script>
  

  <script src="/ds/assets/js/just-the-docs.js"></script>

  <meta name="viewport" content="width=device-width, initial-scale=1">

  



  <!-- Begin Jekyll SEO tag v2.8.0 -->
<title>tangent/ds | data science toolkit for JavaScript</title>
<meta name="generator" content="Jekyll v4.4.1" />
<meta property="og:title" content="tangent/ds" />
<meta property="og:locale" content="en_US" />
<meta name="description" content="Statistical analysis and machine learning for JavaScript/TypeScript. Analyze data, build models, visualize results." />
<meta property="og:description" content="Statistical analysis and machine learning for JavaScript/TypeScript. Analyze data, build models, visualize results." />
<link rel="canonical" href="https://tangent-to.github.io/ds/assets/css/just-the-docs-head-nav.css" />
<meta property="og:url" content="https://tangent-to.github.io/ds/assets/css/just-the-docs-head-nav.css" />
<meta property="og:site_name" content="tangent/ds" />
<meta property="og:type" content="website" />
<meta name="twitter:card" content="summary" />
<meta property="twitter:title" content="tangent/ds" />
<script type="application/ld+json">
{"@context":"https://schema.org","@type":"WebPage","description":"Statistical analysis and machine learning for JavaScript/TypeScript. Analyze data, build models, visualize results.","headline":"tangent/ds","publisher":{"@type":"Organization","logo":{"@type":"ImageObject","url":"https://tangent-to.github.io/ds/ds/assets/images/logo.png"}},"url":"https://tangent-to.github.io/ds/assets/css/just-the-docs-head-nav.css"}</script>
<!-- End Jekyll SEO tag -->


  <!-- Custom head content for tangent/ds documentation -->
<link rel="icon" type="image/png" href="/ds/assets/images/logo.png">

<!-- Open Graph / Social Media Meta Tags -->
<meta property="og:title" content="tangent/ds - data science toolkit for JavaScript">
<meta property="og:description" content="Statistical analysis and machine learning for JavaScript/TypeScript. Analyze data, build models, visualize results.">
<meta property="og:type" content="website">
<meta property="og:url" content="https://tangent-to.github.io/ds/assets/css/just-the-docs-head-nav.css">
<meta property="og:image" content="/ds/assets/images/logo.png">

<!-- Twitter Card Meta Tags -->
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="tangent/ds">
<meta name="twitter:description" content="Statistical analysis and machine learning for JavaScript/TypeScript. Analyze data, build models, visualize results.">

<!-- Additional Fonts -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">

<style>
  /* Custom font stack */
  body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
  }

  /* Improve code blocks */
  code {
    background-color: #f6f8fa;
    padding: 0.2em 0.4em;
    border-radius: 3px;
    font-size: 0.9em;
  }

  pre code {
    background-color: transparent;
    padding: 0;
  }

  /* Syntax highlighting improvements */
  .highlight {
    border-radius: 6px;
    border: 1px solid #e1e4e8;
  }

  /* Better link colors */
  a {
    color: #667eea;
  }

  a:hover {
    color: #5568d3;
  }

  /* Improve button styles */
  .btn-primary {
    background-color: #667eea;
    border-color: #667eea;
  }

  .btn-primary:hover {
    background-color: #5568d3;
    border-color: #5568d3;
  }

  /* Warning/Info boxes */
  .label {
    border-radius: 4px;
  }

  /* Responsive improvements */
  @media (max-width: 768px) {
    .main-content {
      padding: 1rem;
    }
  }
</style>


</head>

<body>
  <a class="skip-to-main" href="#main-content">Skip to main content</a>
  <svg xmlns="http://www.w3.org/2000/svg" class="d-none">
  <symbol id="svg-link" viewBox="0 0 24 24">
  <title>Link</title>
  <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link">
    <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path>
  </svg>
</symbol>

  <symbol id="svg-menu" viewBox="0 0 24 24">
  <title>Menu</title>
  <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-menu">
    <line x1="3" y1="12" x2="21" y2="12"></line><line x1="3" y1="6" x2="21" y2="6"></line><line x1="3" y1="18" x2="21" y2="18"></line>
  </svg>
</symbol>

  <symbol id="svg-arrow-right" viewBox="0 0 24 24">
  <title>Expand</title>
  <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-chevron-right">
    <polyline points="9 18 15 12 9 6"></polyline>
  </svg>
</symbol>

  <!-- Feather. MIT License: https://github.com/feathericons/feather/blob/master/LICENSE -->
<symbol id="svg-external-link" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-external-link">
  <title id="svg-external-link-title">(external link)</title>
  <path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"></path><polyline points="15 3 21 3 21 9"></polyline><line x1="10" y1="14" x2="21" y2="3"></line>
</symbol>

  
    <symbol id="svg-doc" viewBox="0 0 24 24">
  <title>Document</title>
  <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-file">
    <path d="M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"></path><polyline points="13 2 13 9 20 9"></polyline>
  </svg>
</symbol>

    <symbol id="svg-search" viewBox="0 0 24 24">
  <title>Search</title>
  <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-search">
    <circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line>
  </svg>
</symbol>

  
  
    <!-- Bootstrap Icons. MIT License: https://github.com/twbs/icons/blob/main/LICENSE.md -->
<symbol id="svg-copy" viewBox="0 0 16 16">
  <title>Copy</title>
  <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-clipboard" viewBox="0 0 16 16">
    <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z"/>
    <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z"/>
  </svg>
</symbol>
<symbol id="svg-copied" viewBox="0 0 16 16">
  <title>Copied</title>
  <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-clipboard-check-fill" viewBox="0 0 16 16">
    <path d="M6.5 0A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3Zm3 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3Z"/>
    <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1A2.5 2.5 0 0 1 9.5 5h-3A2.5 2.5 0 0 1 4 2.5v-1Zm6.854 7.354-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L7.5 10.793l2.646-2.647a.5.5 0 0 1 .708.708Z"/>
  </svg>
</symbol>

  
</svg>

  
    <header class="side-bar">
  <div class="site-header">
    <a href="/ds/" class="site-title lh-tight">
  <div class="site-logo" role="img" aria-label="tangent/ds"></div>

</a>
    <button id="menu-button" class="site-button btn-reset" aria-label="Menu" aria-expanded="false">
      <svg viewBox="0 0 24 24" class="icon" aria-hidden="true"><use xlink:href="#svg-menu"></use></svg>
    </button>
  </div>

  <nav aria-label="Main" id="site-nav" class="site-nav">
  
  
    <ul class="nav-list"><li class="nav-list-item"><a href="/ds/" class="nav-list-link">Home</a></li><li class="nav-list-item"><a href="/ds/getting-started" class="nav-list-link">Getting Started</a></li><li class="nav-list-item"><a href="/ds/tutorials" class="nav-list-link">Tutorials</a></li><li class="nav-list-item"><button class="nav-list-expander btn-reset" aria-label="API Reference submenu" aria-expanded="false">
        <svg viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#svg-arrow-right"></use></svg>
      </button><a href="/ds/api" class="nav-list-link">API Reference</a><ul class="nav-list"><li class="nav-list-item"><a href="/ds/api/statistics" class="nav-list-link">Statistics</a></li><li class="nav-list-item"><a href="/ds/api/machine-learning" class="nav-list-link">Machine Learning</a></li><li class="nav-list-item"><a href="/ds/api/multivariate" class="nav-list-link">Multivariate Analysis</a></li><li class="nav-list-item"><a href="/ds/api/visualization" class="nav-list-link">Visualization</a></li><li class="nav-list-item"><a href="/ds/api/core" class="nav-list-link">Core Utilities</a></li></ul></li><li class="nav-list-item"><a href="/ds/examples" class="nav-list-link">Examples</a></li></ul>
  
</nav>


<div class="d-md-block d-none site-footer">
  
  
    This site uses <a href="https://github.com/just-the-docs/just-the-docs">Just the Docs</a>, a documentation theme for Jekyll.
  
  </div>
</header>

  
  <div class="main" id="top">
    <div id="main-header" class="main-header">
  
    

<div class="search" role="search">
  <div class="search-input-wrap">
    <input type="text" id="search-input" class="search-input" tabindex="0" placeholder="Search tangent/ds" autocomplete="off">
    <label for="search-input" class="search-label">
      <span class="sr-only">Search tangent/ds</span>
      <svg viewBox="0 0 24 24" class="search-icon" aria-hidden="true"><use xlink:href="#svg-search"></use></svg>
    </label>
  </div>
  <div id="search-results" class="search-results"></div>
</div>

  
  <!-- No custom header content needed - gradient is applied via head_custom.html CSS on .site-header -->

  
    <nav aria-label="Auxiliary" class="aux-nav">
  <ul class="aux-nav-list">
    
      <li class="aux-nav-list-item">
        <a href="https://github.com/tangent-to/ds" class="site-button"
          
        >
          View on GitHub
        </a>
      </li>
    
      <li class="aux-nav-list-item">
        <a href="https://www.npmjs.com/package/@tangent/ds" class="site-button"
          
        >
          NPM Package
        </a>
      </li>
    
  </ul>
</nav>

  
</div>

    <div class="main-content-wrap">
      
      <div id="main-content" class="main-content">
        <main>
          
            <h.site-nav ul li a {
  background-image: linear-gradient(-90deg, rgb(234.8, 236.82, 244.9) 0%, rgba(234.8, 236.82, 244.9, 0.8) 80%, rgba(234.8, 236.82, 244.9, 0) 100%);
}

          

          
            
          
        </main>
        
<hr>
<footer>
  
    <p><a href="#top" id="back-to-top">Back to top</a></p>
  

  <!-- Custom footer for tangent/ds documentation -->
<div class="ds-custom-footer">
  <style>
    .ds-custom-footer {
      margin-top: 4rem;
      padding: 2rem 0;
      border-top: 2px solid #e1e4e8;
    }

    .ds-footer-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
      gap: 2rem;
      margin-bottom: 2rem;
    }

    .ds-footer-section h4 {
      font-size: 0.9rem;
      font-weight: 600;
      margin-bottom: 0.75rem;
      color: #24292e;
    }

    .ds-footer-links {
      list-style: none;
      padding: 0;
      margin: 0;
    }

    .ds-footer-links li {
      margin-bottom: 0.5rem;
    }

    .ds-footer-links a {
      color: #586069;
      text-decoration: none;
      font-size: 0.85rem;
      transition: color 0.2s;
    }

    .ds-footer-links a:hover {
      color: #667eea;
    }

    .ds-footer-bottom {
      padding-top: 1.5rem;
      border-top: 1px solid #e1e4e8;
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 1rem;
      font-size: 0.85rem;
      color: #586069;
    }

    .ds-footer-badges {
      display: flex;
      gap: 0.5rem;
      flex-wrap: wrap;
    }

    .ds-footer-badge {
      padding: 0.25rem 0.6rem;
      background: #f6f8fa;
      border: 1px solid #e1e4e8;
      border-radius: 4px;
      font-size: 0.75rem;
      font-weight: 500;
      color: #24292e;
    }

    @media (max-width: 768px) {
      .ds-footer-grid {
        grid-template-columns: 1fr 1fr;
      }

      .ds-footer-bottom {
        flex-direction: column;
        align-items: flex-start;
      }
    }
  </style>

  <div class="ds-footer-grid">
    <div class="ds-footer-section">
      <h4>Documentation</h4>
      <ul class="ds-footer-links">
        <li><a href="/ds/getting-started">Getting Started</a></li>
        <li><a href="/ds/api">API Reference</a></li>
        <li><a href="/ds/tutorials">Tutorials</a></li>
        <li><a href="/ds/examples">Examples</a></li>
      </ul>
    </div>

    <div class="ds-footer-section">
      <h4>API Reference</h4>
      <ul class="ds-footer-links">
        <li><a href="/ds/api/statistics">Statistics</a></li>
        <li><a href="/ds/api/machine-learning">Machine Learning</a></li>
        <li><a href="/ds/api/multivariate">Multivariate Analysis</a></li>
        <li><a href="/ds/api/visualization">Visualization</a></li>
        <li><a href="/ds/api/core">Core Utilities</a></li>
      </ul>
    </div>

    <div class="ds-footer-section">
      <h4>Resources</h4>
      <ul class="ds-footer-links">
        <li><a href="https://github.com/tangent-to/ds" target="_blank" rel="noopener">GitHub Repository</a></li>
        <li><a href="https://github.com/tangent-to/ds/issues" target="_blank" rel="noopener">Report an Issue</a></li>
        <li><a href="https://github.com/tangent-to/ds/discussions" target="_blank" rel="noopener">Discussions</a></li>
        <li><a href="https://www.npmjs.com/package/@tangent/ds" target="_blank" rel="noopener">NPM Package</a></li>
      </ul>
    </div>

    <div class="ds-footer-section">
      <h4>Community</h4>
      <ul class="ds-footer-links">
        <li><a href="https://github.com/tangent-to/ds/blob/main/CONTRIBUTING.md" target="_blank" rel="noopener">Contributing Guide</a></li>
        <li><a href="https://github.com/tangent-to/ds/blob/main/LICENSE" target="_blank" rel="noopener">License (GPL-3)</a></li>
      </ul>
    </div>
  </div>

  <div class="ds-footer-bottom">
    <p style="margin: 0;">
      &copy; 2025 <a href="https://github.com/tangent-to/ds" style="color: inherit;">tangent/ds</a>.
      Licensed under <a href="https://github.com/tangent-to/ds/blob/main/LICENSE" style="color: inherit;">GPL-3.0</a>.
    </p>

    <div class="ds-footer-badges">
      <span class="ds-footer-badge">v0.3.1</span>
      <span class="ds-footer-badge">Browser + Node.js</span>
      <span class="ds-footer-badge">ESM</span>
    </div>
  </div>
</div>


  <div class="d-md-none mt-4 fs-2">
    
    
      This site uses <a href="https://github.com/just-the-docs/just-the-docs">Just the Docs</a>, a documentation theme for Jekyll.
    
  </div>
</footer>

      </div>
    </div>
    
      

<div class="search-overlay"></div>

    
  </div>

  
</body>
</html>

