You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@madlib.apache.org by ri...@apache.org on 2017/05/16 20:29:27 UTC

[12/51] [partial] incubator-madlib-site git commit: Add v1.11 docs

http://git-wip-us.apache.org/repos/asf/incubator-madlib-site/blob/b5b51c69/docs/v1.11/hypothesis__tests_8sql__in.html
----------------------------------------------------------------------
diff --git a/docs/v1.11/hypothesis__tests_8sql__in.html b/docs/v1.11/hypothesis__tests_8sql__in.html
new file mode 100644
index 0000000..616a82c
--- /dev/null
+++ b/docs/v1.11/hypothesis__tests_8sql__in.html
@@ -0,0 +1,1249 @@
+<!-- HTML header for doxygen 1.8.4-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="keywords" content="madlib,postgres,greenplum,machine learning,data mining,deep learning,ensemble methods,data science,market basket analysis,affinity analysis,pca,lda,regression,elastic net,huber white,proportional hazards,k-means,latent dirichlet allocation,bayes,support vector machines,svm"/>
+<title>MADlib: hypothesis_tests.sql_in File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+  $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<!-- hack in the navigation tree -->
+<script type="text/javascript" src="eigen_navtree_hacks.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+<link href="madlib_extra.css" rel="stylesheet" type="text/css"/>
+<!-- google analytics -->
+<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','//www.google-analytics.com/analytics.js','ga');
+  ga('create', 'UA-45382226-1', 'madlib.incubator.apache.org');
+  ga('send', 'pageview');
+</script>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectlogo"><a href="http://madlib.incubator.apache.org"><img alt="Logo" src="madlib.png" height="50" style="padding-left:0.5em;" border="0"/ ></a></td>
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">
+   <span id="projectnumber">1.11</span>
+   </div>
+   <div id="projectbrief">User Documentation for MADlib</div>
+  </td>
+   <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('hypothesis__tests_8sql__in.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">hypothesis_tests.sql_in File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>SQL functions for statistical hypothesis tests.  
+<a href="#details">More...</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a3bd1bcc335a2da73d01b40e06f7d2eea"><td class="memItemLeft" align="right" valign="top">float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#a3bd1bcc335a2da73d01b40e06f7d2eea">t_test_one_transition</a> (float8[] state, float8 value)</td></tr>
+<tr class="separator:a3bd1bcc335a2da73d01b40e06f7d2eea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac97c5f5015790b59645d69858e127645"><td class="memItemLeft" align="right" valign="top">float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#ac97c5f5015790b59645d69858e127645">t_test_merge_states</a> (float8[] state1, float8[] state2)</td></tr>
+<tr class="separator:ac97c5f5015790b59645d69858e127645"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad570d893565618bcbbcbb01b3bb0a9b9"><td class="memItemLeft" align="right" valign="top">t_test_result&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#ad570d893565618bcbbcbb01b3bb0a9b9">t_test_one_final</a> (float8[] state)</td></tr>
+<tr class="separator:ad570d893565618bcbbcbb01b3bb0a9b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc6006e8da028dd93ac48b8fd9ae8786"><td class="memItemLeft" align="right" valign="top">f_test_result&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#abc6006e8da028dd93ac48b8fd9ae8786">f_test_final</a> (float8[] state)</td></tr>
+<tr class="separator:abc6006e8da028dd93ac48b8fd9ae8786"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14fdcfa276fd1a7ea2e3adb41ebe7db4"><td class="memItemLeft" align="right" valign="top">aggregate float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#a14fdcfa276fd1a7ea2e3adb41ebe7db4">t_test_one</a> (float8 value)</td></tr>
+<tr class="memdesc:a14fdcfa276fd1a7ea2e3adb41ebe7db4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform one-sample or dependent paired Student t-test.  <a href="#a14fdcfa276fd1a7ea2e3adb41ebe7db4">More...</a><br /></td></tr>
+<tr class="separator:a14fdcfa276fd1a7ea2e3adb41ebe7db4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a835d80d1846a10a2c25b91ce81c6d2"><td class="memItemLeft" align="right" valign="top">float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#a1a835d80d1846a10a2c25b91ce81c6d2">t_test_two_transition</a> (float8[] state, boolean first, float8 value)</td></tr>
+<tr class="separator:a1a835d80d1846a10a2c25b91ce81c6d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a0a8a579bbf0f0d1efcbf62223e3431"><td class="memItemLeft" align="right" valign="top">t_test_result&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#a0a0a8a579bbf0f0d1efcbf62223e3431">t_test_two_pooled_final</a> (float8[] state)</td></tr>
+<tr class="separator:a0a0a8a579bbf0f0d1efcbf62223e3431"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c306ba8380ce6567831fef4610e515b"><td class="memItemLeft" align="right" valign="top">aggregate float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#a5c306ba8380ce6567831fef4610e515b">t_test_two_pooled</a> (boolean first, float8 value)</td></tr>
+<tr class="memdesc:a5c306ba8380ce6567831fef4610e515b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform two-sample pooled (i.e., equal variances) Student t-test.  <a href="#a5c306ba8380ce6567831fef4610e515b">More...</a><br /></td></tr>
+<tr class="separator:a5c306ba8380ce6567831fef4610e515b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8fe7f38d29bf835718adca811e36f15a"><td class="memItemLeft" align="right" valign="top">t_test_result&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#a8fe7f38d29bf835718adca811e36f15a">t_test_two_unpooled_final</a> (float8[] state)</td></tr>
+<tr class="separator:a8fe7f38d29bf835718adca811e36f15a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac50750a0e0797ce24af1dc479b9699e1"><td class="memItemLeft" align="right" valign="top">aggregate float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#ac50750a0e0797ce24af1dc479b9699e1">t_test_two_unpooled</a> (boolean first, float8 value)</td></tr>
+<tr class="memdesc:ac50750a0e0797ce24af1dc479b9699e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform unpooled (i.e., unequal variances) t-test (also known as Welch's t-test)  <a href="#ac50750a0e0797ce24af1dc479b9699e1">More...</a><br /></td></tr>
+<tr class="separator:ac50750a0e0797ce24af1dc479b9699e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5a946aa469ff6ddf8d276db16fa26ad4"><td class="memItemLeft" align="right" valign="top">aggregate float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#a5a946aa469ff6ddf8d276db16fa26ad4">f_test</a> (boolean first, float8 value)</td></tr>
+<tr class="memdesc:a5a946aa469ff6ddf8d276db16fa26ad4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform Fisher F-test.  <a href="#a5a946aa469ff6ddf8d276db16fa26ad4">More...</a><br /></td></tr>
+<tr class="separator:a5a946aa469ff6ddf8d276db16fa26ad4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c580537666776f1bd4b9d4a0a6b6438"><td class="memItemLeft" align="right" valign="top">float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#a7c580537666776f1bd4b9d4a0a6b6438">chi2_gof_test_transition</a> (float8[] state, bigint observed, float8 expected, bigint df)</td></tr>
+<tr class="separator:a7c580537666776f1bd4b9d4a0a6b6438"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4b83895c48dd1c1ca2e106b15741868"><td class="memItemLeft" align="right" valign="top">float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#ab4b83895c48dd1c1ca2e106b15741868">chi2_gof_test_transition</a> (float8[] state, bigint observed, float8 expected)</td></tr>
+<tr class="separator:ab4b83895c48dd1c1ca2e106b15741868"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66d03891a6add6d67f944df5344ed40e"><td class="memItemLeft" align="right" valign="top">float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#a66d03891a6add6d67f944df5344ed40e">chi2_gof_test_transition</a> (float8[] state, bigint observed)</td></tr>
+<tr class="separator:a66d03891a6add6d67f944df5344ed40e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b8265718a16ec65e89d2ab512f6a3e1"><td class="memItemLeft" align="right" valign="top">float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#a2b8265718a16ec65e89d2ab512f6a3e1">chi2_gof_test_merge_states</a> (float8[] state1, float8[] state2)</td></tr>
+<tr class="separator:a2b8265718a16ec65e89d2ab512f6a3e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a61c31dfde998db18afd6552239b872c4"><td class="memItemLeft" align="right" valign="top">chi2_test_result&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#a61c31dfde998db18afd6552239b872c4">chi2_gof_test_final</a> (float8[] state)</td></tr>
+<tr class="separator:a61c31dfde998db18afd6552239b872c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c912b329fb103a44253932a653d4e40"><td class="memItemLeft" align="right" valign="top">aggregate float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#a4c912b329fb103a44253932a653d4e40">chi2_gof_test</a> (bigint observed, float8 expected=1, bigint df=0)</td></tr>
+<tr class="memdesc:a4c912b329fb103a44253932a653d4e40"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform Pearson's chi-squared goodness-of-fit test.  <a href="#a4c912b329fb103a44253932a653d4e40">More...</a><br /></td></tr>
+<tr class="separator:a4c912b329fb103a44253932a653d4e40"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a09a8ed9d073f8c43d9ade3cf2defb2b0"><td class="memItemLeft" align="right" valign="top">aggregate float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#a09a8ed9d073f8c43d9ade3cf2defb2b0">chi2_gof_test</a> (bigint observed, float8 expected)</td></tr>
+<tr class="separator:a09a8ed9d073f8c43d9ade3cf2defb2b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13730efbff97aa5624a350135a9b83ff"><td class="memItemLeft" align="right" valign="top">aggregate float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#a13730efbff97aa5624a350135a9b83ff">chi2_gof_test</a> (bigint observed)</td></tr>
+<tr class="separator:a13730efbff97aa5624a350135a9b83ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a58ffb5b2b8392e005f4f3e21560df93f"><td class="memItemLeft" align="right" valign="top">float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#a58ffb5b2b8392e005f4f3e21560df93f">ks_test_transition</a> (float8[] state, boolean first, float8 value, bigint numFirst, bigint numSecond)</td></tr>
+<tr class="separator:a58ffb5b2b8392e005f4f3e21560df93f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd3f6d1d6dc4203cab3bcc980ec8ed8d"><td class="memItemLeft" align="right" valign="top">ks_test_result&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#abd3f6d1d6dc4203cab3bcc980ec8ed8d">ks_test_final</a> (float8[] state)</td></tr>
+<tr class="separator:abd3f6d1d6dc4203cab3bcc980ec8ed8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e324c82b069ebf7b498012aa83931c5"><td class="memItemLeft" align="right" valign="top">float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#a4e324c82b069ebf7b498012aa83931c5">mw_test_transition</a> (float8[] state, boolean first, float8 value)</td></tr>
+<tr class="memdesc:a4e324c82b069ebf7b498012aa83931c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform Kolmogorov-Smirnov test.  <a href="#a4e324c82b069ebf7b498012aa83931c5">More...</a><br /></td></tr>
+<tr class="separator:a4e324c82b069ebf7b498012aa83931c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac18e666088117997da2d22236e982f5e"><td class="memItemLeft" align="right" valign="top">mw_test_result&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#ac18e666088117997da2d22236e982f5e">mw_test_final</a> (float8[] state)</td></tr>
+<tr class="separator:ac18e666088117997da2d22236e982f5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d85654832dfa961cd13526c052642f3"><td class="memItemLeft" align="right" valign="top">float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#a0d85654832dfa961cd13526c052642f3">wsr_test_transition</a> (float8[] state, float8 value, float8 precision)</td></tr>
+<tr class="memdesc:a0d85654832dfa961cd13526c052642f3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform Mann-Whitney test.  <a href="#a0d85654832dfa961cd13526c052642f3">More...</a><br /></td></tr>
+<tr class="separator:a0d85654832dfa961cd13526c052642f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4093de00ab033f4900ce186d481fa012"><td class="memItemLeft" align="right" valign="top">float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#a4093de00ab033f4900ce186d481fa012">wsr_test_transition</a> (float8[] state, float8 value)</td></tr>
+<tr class="separator:a4093de00ab033f4900ce186d481fa012"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8f0431ace27ac78e9e1df9906f1f1c33"><td class="memItemLeft" align="right" valign="top">wsr_test_result&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#a8f0431ace27ac78e9e1df9906f1f1c33">wsr_test_final</a> (float8[] state)</td></tr>
+<tr class="separator:a8f0431ace27ac78e9e1df9906f1f1c33"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa694f4ce95280210a3887773bb3f417b"><td class="memItemLeft" align="right" valign="top">float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#aa694f4ce95280210a3887773bb3f417b">one_way_anova_transition</a> (float8[] state, integer group, float8 value)</td></tr>
+<tr class="memdesc:aa694f4ce95280210a3887773bb3f417b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform Wilcoxon-Signed-Rank test.  <a href="#aa694f4ce95280210a3887773bb3f417b">More...</a><br /></td></tr>
+<tr class="separator:aa694f4ce95280210a3887773bb3f417b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad6c05d07183c961961f171b0a925ad93"><td class="memItemLeft" align="right" valign="top">float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#ad6c05d07183c961961f171b0a925ad93">one_way_anova_merge_states</a> (float8[] state1, float8[] state2)</td></tr>
+<tr class="separator:ad6c05d07183c961961f171b0a925ad93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ac28bec7ff670a7da8b9eae4a8ed4cb"><td class="memItemLeft" align="right" valign="top">one_way_anova_result&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#a5ac28bec7ff670a7da8b9eae4a8ed4cb">one_way_anova_final</a> (float8[] state)</td></tr>
+<tr class="separator:a5ac28bec7ff670a7da8b9eae4a8ed4cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd5c80afd954294de268030ee73e88cc"><td class="memItemLeft" align="right" valign="top">aggregate float8 []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hypothesis__tests_8sql__in.html#abd5c80afd954294de268030ee73e88cc">one_way_anova</a> (integer group, float8 value)</td></tr>
+<tr class="memdesc:abd5c80afd954294de268030ee73e88cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform one-way analysis of variance.  <a href="#abd5c80afd954294de268030ee73e88cc">More...</a><br /></td></tr>
+<tr class="separator:abd5c80afd954294de268030ee73e88cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><dl class="section see"><dt>See also</dt><dd>For an overview of hypthesis-test functions, see the module description <a class="el" href="group__grp__stats__tests.html">Hypothesis Tests</a>. </dd></dl>
+</div><h2 class="groupheader">Function Documentation</h2>
+<a id="a4c912b329fb103a44253932a653d4e40"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4c912b329fb103a44253932a653d4e40">&#9670;&nbsp;</a></span>chi2_gof_test() <span class="overload">[1/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">aggregate float8 [] chi2_gof_test </td>
+          <td>(</td>
+          <td class="paramtype">bigint&#160;</td>
+          <td class="paramname"><em>observed</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float8&#160;</td>
+          <td class="paramname"><em>expected</em> = <code>1</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bigint&#160;</td>
+          <td class="paramname"><em>df</em> = <code>0</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Let <img class="formulaInl" alt="$ n_1, \dots, n_k $" src="form_446.png"/> be a realization of a (vector) random variable <img class="formulaInl" alt="$ N = (N_1, \dots, N_k) $" src="form_447.png"/> that follows the multinomial distribution with parameters <img class="formulaInl" alt="$ k $" src="form_98.png"/> and <img class="formulaInl" alt="$ p = (p_1, \dots, p_k) $" src="form_448.png"/>. Test the null hypothesis <img class="formulaInl" alt="$ H_0 : p = p^0 $" src="form_449.png"/>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">observed</td><td>Number <img class="formulaInl" alt="$ n_i $" src="form_450.png"/> of observations of the current event/row </td></tr>
+    <tr><td class="paramname">expected</td><td>Expected number of observations of current event/row. This number is not required to be normalized. That is, <img class="formulaInl" alt="$ p^0_i $" src="form_451.png"/> will be taken as <code>expected</code> divided by <code>sum(expected)</code>. Hence, if this parameter is not specified, chi2_test() will by default use <img class="formulaInl" alt="$ p^0 = (\frac 1k, \dots, \frac 1k) $" src="form_452.png"/>, i.e., test that <img class="formulaInl" alt="$ p $" src="form_111.png"/> is a discrete uniform distribution. </td></tr>
+    <tr><td class="paramname">df</td><td>Degrees of freedom. This is the number of events reduced by the degree of freedom lost by using the observed numbers for defining the expected number of observations. If this parameter is 0, the degree of freedom is taken as <img class="formulaInl" alt="$ (k - 1) $" src="form_453.png"/>.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>A composite value as follows. Let <img class="formulaInl" alt="$ n = \sum_{i=1}^n n_i $" src="form_454.png"/>.<ul>
+<li><code>statistic FLOAT8</code> - Statistic <p class="formulaDsp">
+<img class="formulaDsp" alt="\[ \chi^2 = \sum_{i=1}^k \frac{(n_i - np_i)^2}{np_i} \]" src="form_455.png"/>
+</p>
+ The corresponding random variable is approximately chi-squared distributed with <code>df</code> degrees of freedom.</li>
+<li><code>df BIGINT</code> - Degrees of freedom</li>
+<li><code>p_value FLOAT8</code> - Approximate p-value, i.e., <img class="formulaInl" alt="$ \Pr[X^2 \geq \chi^2 \mid p = p^0] $" src="form_456.png"/>. Computed as <code>(1.0 - <a class="el" href="prob_8sql__in.html#a230513b6b549d5b445cbacbdbab42c15">chi_squared_cdf</a>(statistic))</code>.</li>
+<li><code>phi FLOAT8</code> - Phi coefficient, i.e., <img class="formulaInl" alt="$ \phi = \sqrt{\frac{\chi^2}{n}} $" src="form_457.png"/></li>
+<li><code>contingency_coef FLOAT8</code> - Contingency coefficient, i.e., <img class="formulaInl" alt="$ \sqrt{\frac{\chi^2}{n + \chi^2}} $" src="form_458.png"/></li>
+</ul>
+</dd></dl>
+<dl class="section user"><dt>Usage</dt><dd><ul>
+<li>Test null hypothesis that all possible outcomes of a categorical variable are equally likely: <pre>SELECT (chi2_gof_test(<em>observed</em>, 1, NULL)).* FROM <em>source</em></pre></li>
+<li>Test null hypothesis that two categorical variables are independent. Such data is often shown in a <em>contingency table</em> (also known as <em>crosstab</em>). A crosstab is a matrix where possible values for the first variable correspond to rows and values for the second variable to columns. The matrix elements are the observation frequencies of the joint occurrence of the respective values. <a class="el" href="hypothesis__tests_8sql__in.html#a4c912b329fb103a44253932a653d4e40" title="Perform Pearson&#39;s chi-squared goodness-of-fit test. ">chi2_gof_test()</a> assumes that the crosstab is stored in normalized form, i.e., there are three columns <code><em>var1</em></code>, <code><em>var2</em></code>, <code><em>observed</em></code>. <pre>SELECT (chi2_gof_test(<em>observed</em>, expected, deg_freedom)).*
+FROM (
+    SELECT
+        <em>observed</em>,
+        sum(<em>observed</em>) OVER (PARTITION BY var1)::DOUBLE PRECISION
+            * sum(<em>observed</em>) OVER (PARTITION BY var2) AS expected
+    FROM <em>source</em>
+) p, (
+   SELECT
+        (count(DISTINCT <em>var1</em>) - 1) * (count(DISTINCT <em>var2</em>) - 1) AS deg_freedom
+    FROM <em>source</em>
+) q;</pre> </li>
+</ul>
+</dd></dl>
+
+</div>
+</div>
+<a id="a09a8ed9d073f8c43d9ade3cf2defb2b0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a09a8ed9d073f8c43d9ade3cf2defb2b0">&#9670;&nbsp;</a></span>chi2_gof_test() <span class="overload">[2/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">aggregate float8 [] chi2_gof_test </td>
+          <td>(</td>
+          <td class="paramtype">bigint&#160;</td>
+          <td class="paramname"><em>observed</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float8&#160;</td>
+          <td class="paramname"><em>expected</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a13730efbff97aa5624a350135a9b83ff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a13730efbff97aa5624a350135a9b83ff">&#9670;&nbsp;</a></span>chi2_gof_test() <span class="overload">[3/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">aggregate float8 [] chi2_gof_test </td>
+          <td>(</td>
+          <td class="paramtype">bigint&#160;</td>
+          <td class="paramname"><em>observed</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a61c31dfde998db18afd6552239b872c4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a61c31dfde998db18afd6552239b872c4">&#9670;&nbsp;</a></span>chi2_gof_test_final()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">chi2_test_result chi2_gof_test_final </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a2b8265718a16ec65e89d2ab512f6a3e1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2b8265718a16ec65e89d2ab512f6a3e1">&#9670;&nbsp;</a></span>chi2_gof_test_merge_states()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float8 [] chi2_gof_test_merge_states </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state1</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state2</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a7c580537666776f1bd4b9d4a0a6b6438"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7c580537666776f1bd4b9d4a0a6b6438">&#9670;&nbsp;</a></span>chi2_gof_test_transition() <span class="overload">[1/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float8 [] chi2_gof_test_transition </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bigint&#160;</td>
+          <td class="paramname"><em>observed</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float8&#160;</td>
+          <td class="paramname"><em>expected</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bigint&#160;</td>
+          <td class="paramname"><em>df</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ab4b83895c48dd1c1ca2e106b15741868"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab4b83895c48dd1c1ca2e106b15741868">&#9670;&nbsp;</a></span>chi2_gof_test_transition() <span class="overload">[2/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float8 [] chi2_gof_test_transition </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bigint&#160;</td>
+          <td class="paramname"><em>observed</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float8&#160;</td>
+          <td class="paramname"><em>expected</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a66d03891a6add6d67f944df5344ed40e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a66d03891a6add6d67f944df5344ed40e">&#9670;&nbsp;</a></span>chi2_gof_test_transition() <span class="overload">[3/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float8 [] chi2_gof_test_transition </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bigint&#160;</td>
+          <td class="paramname"><em>observed</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a5a946aa469ff6ddf8d276db16fa26ad4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5a946aa469ff6ddf8d276db16fa26ad4">&#9670;&nbsp;</a></span>f_test()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">aggregate float8 [] f_test </td>
+          <td>(</td>
+          <td class="paramtype">boolean&#160;</td>
+          <td class="paramname"><em>first</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float8&#160;</td>
+          <td class="paramname"><em>value</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Given realizations <img class="formulaInl" alt="$ x_1, \dots, x_m $" src="form_434.png"/> and <img class="formulaInl" alt="$ y_1, \dots, y_n $" src="form_435.png"/> of i.i.d. random variables <img class="formulaInl" alt="$ X_1, \dots, X_m \sim N(\mu_X, \sigma^2) $" src="form_436.png"/> and <img class="formulaInl" alt="$ Y_1, \dots, Y_n \sim N(\mu_Y, \sigma^2) $" src="form_437.png"/> with unknown parameters <img class="formulaInl" alt="$ \mu_X, \mu_Y, $" src="form_417.png"/> and <img class="formulaInl" alt="$ \sigma^2 $" src="form_306.png"/>, test the null hypotheses <img class="formulaInl" alt="$ H_0 : \sigma_X &lt; \sigma_Y $" src="form_438.png"/> and <img class="formulaInl" alt="$ H_0 : \sigma_X = \sigma_Y $" src="form_439.png"/>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">first</td><td>Indicator whether <code>value</code> is from first sample <img class="formulaInl" alt="$ x_1, \dots, x_m $" src="form_434.png"/> (if <code>TRUE</code>) or from second sample <img class="formulaInl" alt="$ y_1, \dots, y_n $" src="form_435.png"/> (if <code>FALSE</code>) </td></tr>
+    <tr><td class="paramname">value</td><td>Value of random variate <img class="formulaInl" alt="$ x_i $" src="form_63.png"/> or <img class="formulaInl" alt="$ y_i $" src="form_61.png"/></td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>A composite value as follows. We denote by <img class="formulaInl" alt="$ \bar x, \bar y $" src="form_420.png"/> the sample means and by <img class="formulaInl" alt="$ s_X^2, s_Y^2 $" src="form_421.png"/> the sample variances.<ul>
+<li><code>statistic FLOAT8</code> - Statistic <p class="formulaDsp">
+<img class="formulaDsp" alt="\[ f = \frac{s_Y^2}{s_X^2} \]" src="form_440.png"/>
+</p>
+ The corresponding random variable is F-distributed with <img class="formulaInl" alt="$ (n - 1) $" src="form_409.png"/> degrees of freedom in the numerator and <img class="formulaInl" alt="$ (m - 1) $" src="form_441.png"/> degrees of freedom in the denominator.</li>
+<li><code>df1 BIGINT</code> - Degrees of freedom in the numerator <img class="formulaInl" alt="$ (n - 1) $" src="form_409.png"/></li>
+<li><code>df2 BIGINT</code> - Degrees of freedom in the denominator <img class="formulaInl" alt="$ (m - 1) $" src="form_441.png"/></li>
+<li><code>p_value_one_sided FLOAT8</code> - Lower bound on one-sided p-value. In detail, the result is <img class="formulaInl" alt="$ \Pr[F \geq f \mid \sigma_X = \sigma_Y] $" src="form_442.png"/>, which is a lower bound on <img class="formulaInl" alt="$ \Pr[F \geq f \mid \sigma_X \leq \sigma_Y] $" src="form_443.png"/>. Computed as <code>(1.0 - <a class="el" href="prob_8sql__in.html#a6c5b3e35531e44098f9d0cbef14cb8a6">fisher_f_cdf</a>(statistic))</code>.</li>
+<li><code>p_value_two_sided FLOAT8</code> - Two-sided p-value, i.e., <img class="formulaInl" alt="$ 2 \cdot \min \{ p, 1 - p \} $" src="form_444.png"/> where <img class="formulaInl" alt="$ p = \Pr[ F \geq f \mid \sigma_X = \sigma_Y] $" src="form_445.png"/>. Computed as <code>(min(p_value_one_sided, 1. - p_value_one_sided))</code>.</li>
+</ul>
+</dd></dl>
+<dl class="section user"><dt>Usage</dt><dd><ul>
+<li>Test null hypothesis that the variance of the first sample is at most (or equal to, respectively) the variance of the second sample: <pre>SELECT (f_test(<em>first</em>, <em>value</em>)).* FROM <em>source</em></pre> </li>
+</ul>
+</dd></dl>
+
+</div>
+</div>
+<a id="abc6006e8da028dd93ac48b8fd9ae8786"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abc6006e8da028dd93ac48b8fd9ae8786">&#9670;&nbsp;</a></span>f_test_final()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">f_test_result f_test_final </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="abd3f6d1d6dc4203cab3bcc980ec8ed8d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abd3f6d1d6dc4203cab3bcc980ec8ed8d">&#9670;&nbsp;</a></span>ks_test_final()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">ks_test_result ks_test_final </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a58ffb5b2b8392e005f4f3e21560df93f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a58ffb5b2b8392e005f4f3e21560df93f">&#9670;&nbsp;</a></span>ks_test_transition()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float8 [] ks_test_transition </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">boolean&#160;</td>
+          <td class="paramname"><em>first</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float8&#160;</td>
+          <td class="paramname"><em>value</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bigint&#160;</td>
+          <td class="paramname"><em>numFirst</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bigint&#160;</td>
+          <td class="paramname"><em>numSecond</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ac18e666088117997da2d22236e982f5e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac18e666088117997da2d22236e982f5e">&#9670;&nbsp;</a></span>mw_test_final()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">mw_test_result mw_test_final </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a4e324c82b069ebf7b498012aa83931c5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4e324c82b069ebf7b498012aa83931c5">&#9670;&nbsp;</a></span>mw_test_transition()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float8 [] mw_test_transition </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">boolean&#160;</td>
+          <td class="paramname"><em>first</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float8&#160;</td>
+          <td class="paramname"><em>value</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Given realizations <img class="formulaInl" alt="$ x_1, \dots, x_m $" src="form_434.png"/> and <img class="formulaInl" alt="$ y_1, \dots, y_m $" src="form_414.png"/> of i.i.d. random variables <img class="formulaInl" alt="$ X_1, \dots, X_m $" src="form_459.png"/> and i.i.d. <img class="formulaInl" alt="$ Y_1, \dots, Y_n $" src="form_460.png"/>, respectively, test the null hypothesis that the underlying distributions function <img class="formulaInl" alt="$ F_X, F_Y $" src="form_461.png"/> are identical, i.e., <img class="formulaInl" alt="$ H_0 : F_X = F_Y $" src="form_462.png"/>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">first</td><td>Determines whether the value belongs to the first (if <code>TRUE</code>) or the second sample (if <code>FALSE</code>) </td></tr>
+    <tr><td class="paramname">value</td><td>Value of random variate <img class="formulaInl" alt="$ x_i $" src="form_63.png"/> or <img class="formulaInl" alt="$ y_i $" src="form_61.png"/> </td></tr>
+    <tr><td class="paramname">m</td><td>Size <img class="formulaInl" alt="$ m $" src="form_293.png"/> of the first sample. See usage instructions below. </td></tr>
+    <tr><td class="paramname">n</td><td>Size of the second sample. See usage instructions below.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>A composite value.<ul>
+<li><code>statistic FLOAT8</code> - Kolmogorov–Smirnov statistic <p class="formulaDsp">
+<img class="formulaDsp" alt="\[ d = \max_{t \in \mathbb R} |F_x(t) - F_y(t)| \]" src="form_463.png"/>
+</p>
+ where <img class="formulaInl" alt="$ F_x(t) := \frac 1m |\{ i \mid x_i \leq t \}| $" src="form_464.png"/> and <img class="formulaInl" alt="$ F_y $" src="form_465.png"/> (defined likewise) are the empirical distribution functions.</li>
+<li><code>k_statistic FLOAT8</code> - Kolmogorov statistic <img class="formulaInl" alt="$ k = (r + 0.12 + \frac{0.11}{r}) \cdot d $" src="form_466.png"/> where <img class="formulaInl" alt="$ r = \sqrt{\frac{m n}{m+n}}. $" src="form_467.png"/> and <img class="formulaInl" alt="$ d $" src="form_468.png"/> is the statistic. Then <img class="formulaInl" alt="$ k $" src="form_98.png"/> is approximately Kolmogorov distributed.</li>
+<li><code>p_value FLOAT8</code> - Approximate p-value, i.e., an approximate value for <img class="formulaInl" alt="$ \Pr[D \geq d \mid F_X = F_Y] $" src="form_469.png"/>. Computed as <code>(1.0 - <a class="el" href="prob_8sql__in.html#aeef43f74f583bdff17bd074d9c0d9607">kolmogorov_cdf</a>(k_statistic))</code>.</li>
+</ul>
+</dd></dl>
+<dl class="section user"><dt>Usage</dt><dd><ul>
+<li>Test null hypothesis that two samples stem from the same distribution: <pre>SELECT (ks_test(<em>first</em>, <em>value</em>,
+    (SELECT count(<em>value</em>) FROM <em>source</em> WHERE <em>first</em>),
+    (SELECT count(<em>value</em>) FROM <em>source</em> WHERE NOT <em>first</em>)
+    ORDER BY <em>value</em>
+)).* FROM <em>source</em></pre></li>
+</ul>
+</dd></dl>
+<dl class="section note"><dt>Note</dt><dd>This aggregate must be used as an ordered aggregate (<code>ORDER BY <em>value</code></em>) and will raise an exception if values are not ordered. </dd></dl>
+
+</div>
+</div>
+<a id="abd5c80afd954294de268030ee73e88cc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abd5c80afd954294de268030ee73e88cc">&#9670;&nbsp;</a></span>one_way_anova()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">aggregate float8 [] one_way_anova </td>
+          <td>(</td>
+          <td class="paramtype">integer&#160;</td>
+          <td class="paramname"><em>group</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float8&#160;</td>
+          <td class="paramname"><em>value</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Given realizations <img class="formulaInl" alt="$ x_{1,1}, \dots, x_{1, n_1}, x_{2,1}, \dots, x_{2,n_2}, \dots, x_{k,n_k} $" src="form_494.png"/> of i.i.d. random variables <img class="formulaInl" alt="$ X_{i,j} \sim N(\mu_i, \sigma^2) $" src="form_495.png"/> with unknown parameters <img class="formulaInl" alt="$ \mu_1, \dots, \mu_k $" src="form_496.png"/> and <img class="formulaInl" alt="$ \sigma^2 $" src="form_306.png"/>, test the null hypotheses <img class="formulaInl" alt="$ H_0 : \mu_1 = \dots = \mu_k $" src="form_497.png"/>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">group</td><td>Group which <code>value</code> is from. Note that <code>group</code> can assume arbitary value not limited to a continguous range of integers. </td></tr>
+    <tr><td class="paramname">value</td><td>Value of random variate <img class="formulaInl" alt="$ x_{i,j} $" src="form_498.png"/></td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>A composite value as follows. Let <img class="formulaInl" alt="$ n := \sum_{i=1}^k n_i $" src="form_499.png"/> be the total size of all samples. Denote by <img class="formulaInl" alt="$ \bar x $" src="form_406.png"/> the grand mean, by <img class="formulaInl" alt="$ \overline{x_i} $" src="form_500.png"/> the group sample means, and by <img class="formulaInl" alt="$ s_i^2 $" src="form_501.png"/> the group sample variances.<ul>
+<li><code>sum_squares_between DOUBLE PRECISION</code> - sum of squares between the group means, i.e., <img class="formulaInl" alt="$ \mathit{SS}_b = \sum_{i=1}^k n_i (\overline{x_i} - \bar x)^2. $" src="form_502.png"/></li>
+<li><code>sum_squares_within DOUBLE PRECISION</code> - sum of squares within the groups, i.e., <img class="formulaInl" alt="$ \mathit{SS}_w = \sum_{i=1}^k (n_i - 1) s_i^2. $" src="form_503.png"/></li>
+<li><code>df_between BIGINT</code> - degree of freedom for between-group variation <img class="formulaInl" alt="$ (k-1) $" src="form_504.png"/></li>
+<li><code>df_within BIGINT</code> - degree of freedom for within-group variation <img class="formulaInl" alt="$ (n-k) $" src="form_505.png"/></li>
+<li><code>mean_squares_between DOUBLE PRECISION</code> - mean square between groups, i.e., <img class="formulaInl" alt="$ s_b^2 := \frac{\mathit{SS}_b}{k-1} $" src="form_506.png"/></li>
+<li><code>mean_squares_within DOUBLE PRECISION</code> - mean square within groups, i.e., <img class="formulaInl" alt="$ s_w^2 := \frac{\mathit{SS}_w}{n-k} $" src="form_507.png"/></li>
+<li><code>statistic DOUBLE PRECISION</code> - Statistic computed as <p class="formulaDsp">
+<img class="formulaDsp" alt="\[ f = \frac{s_b^2}{s_w^2}. \]" src="form_508.png"/>
+</p>
+ This statistic is Fisher F-distributed with <img class="formulaInl" alt="$ (k-1) $" src="form_504.png"/> degrees of freedom in the numerator and <img class="formulaInl" alt="$ (n-k) $" src="form_505.png"/> degrees of freedom in the denominator.</li>
+<li><code>p_value DOUBLE PRECISION</code> - p-value, i.e., <img class="formulaInl" alt="$ \Pr[ F \geq f \mid H_0] $" src="form_509.png"/>.</li>
+</ul>
+</dd></dl>
+<dl class="section user"><dt>Usage</dt><dd><ul>
+<li>Test null hypothesis that the mean of the all samples is equal: <pre>SELECT (one_way_anova(<em>group</em>, <em>value</em>)).* FROM <em>source</em></pre> </li>
+</ul>
+</dd></dl>
+
+</div>
+</div>
+<a id="a5ac28bec7ff670a7da8b9eae4a8ed4cb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5ac28bec7ff670a7da8b9eae4a8ed4cb">&#9670;&nbsp;</a></span>one_way_anova_final()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">one_way_anova_result one_way_anova_final </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ad6c05d07183c961961f171b0a925ad93"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad6c05d07183c961961f171b0a925ad93">&#9670;&nbsp;</a></span>one_way_anova_merge_states()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float8 [] one_way_anova_merge_states </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state1</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state2</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="aa694f4ce95280210a3887773bb3f417b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa694f4ce95280210a3887773bb3f417b">&#9670;&nbsp;</a></span>one_way_anova_transition()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float8 [] one_way_anova_transition </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">integer&#160;</td>
+          <td class="paramname"><em>group</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float8&#160;</td>
+          <td class="paramname"><em>value</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Given realizations <img class="formulaInl" alt="$ x_1, \dots, x_n $" src="form_184.png"/> of i.i.d. random variables <img class="formulaInl" alt="$ X_1, \dots, X_n $" src="form_479.png"/> with unknown mean <img class="formulaInl" alt="$ \mu $" src="form_288.png"/>, test the null hypotheses <img class="formulaInl" alt="$ H_0 : \mu \leq 0 $" src="form_404.png"/> and <img class="formulaInl" alt="$ H_0 : \mu = 0 $" src="form_405.png"/>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">value</td><td>Value of random variate <img class="formulaInl" alt="$ x_i $" src="form_63.png"/> or <img class="formulaInl" alt="$ y_i $" src="form_61.png"/>. Values of 0 are ignored (i.e., they do not count towards <img class="formulaInl" alt="$ n $" src="form_11.png"/>). </td></tr>
+    <tr><td class="paramname">precision</td><td>The precision <img class="formulaInl" alt="$ \epsilon_i $" src="form_480.png"/> with which value is known. The precision determines the handling of ties. The current value <img class="formulaInl" alt="$ v_i $" src="form_481.png"/> is regarded a tie with the previous value <img class="formulaInl" alt="$ v_{i-1} $" src="form_482.png"/> if <img class="formulaInl" alt="$ v_i - \epsilon_i \leq \max_{j=1, \dots, i-1} v_j + \epsilon_j $" src="form_483.png"/>. If <code>precision</code> is negative, then it will be treated as <code>value * 2^(-52)</code>. (Note that <img class="formulaInl" alt="$ 2^{-52} $" src="form_366.png"/> is the machine epsilon for type <code>DOUBLE PRECISION</code>.)</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>A composite value:<ul>
+<li><code>statistic FLOAT8</code> - statistic computed as follows. Let <img class="formulaInl" alt="$ w^+ = \sum_{i \mid x_i &gt; 0} r_i $" src="form_484.png"/> and <img class="formulaInl" alt="$ w^- = \sum_{i \mid x_i &lt; 0} r_i $" src="form_485.png"/> be the <em>signed rank sums</em> where <p class="formulaDsp">
+<img class="formulaDsp" alt="\[ r_i = \{ j \mid |x_j| &lt; |x_i| \} + \frac{\{ j \mid |x_j| = |x_i| \} + 1}{2}. \]" src="form_486.png"/>
+</p>
+ The Wilcoxon signed-rank statistic is <img class="formulaInl" alt="$ w = \min \{ w^+, w^- \} $" src="form_487.png"/>.</li>
+<li><code>rank_sum_pos FLOAT8</code> - rank sum of all positive values, i.e., <img class="formulaInl" alt="$ w^+ $" src="form_488.png"/></li>
+<li><code>rank_sum_neg FLOAT8</code> - rank sum of all negative values, i.e., <img class="formulaInl" alt="$ w^- $" src="form_489.png"/></li>
+<li><code>num BIGINT</code> - number <img class="formulaInl" alt="$ n $" src="form_11.png"/> of non-zero values</li>
+<li><code>z_statistic FLOAT8</code> - z-statistic <p class="formulaDsp">
+<img class="formulaDsp" alt="\[ z = \frac{w^+ - \frac{n(n+1)}{4}} {\sqrt{\frac{n(n+1)(2n+1)}{24} - \sum_{i=1}^n \frac{t_i^2 - 1}{48}}} \]" src="form_490.png"/>
+</p>
+ where <img class="formulaInl" alt="$ t_i $" src="form_389.png"/> is the number of values with absolute value equal to <img class="formulaInl" alt="$ |x_i| $" src="form_491.png"/>. The corresponding random variable is approximately standard normally distributed.</li>
+<li><code>p_value_one_sided FLOAT8</code> - One-sided p-value i.e., <img class="formulaInl" alt="$ \Pr[Z \geq z \mid \mu \leq 0] $" src="form_492.png"/>. Computed as <code>(1.0 - <a class="el" href="prob_8sql__in.html#a6c0a499faa80db26c0178f1e69cf7a50">normal_cdf</a>(z_statistic))</code>.</li>
+<li><code>p_value_two_sided FLOAT8</code> - Two-sided p-value, i.e., <img class="formulaInl" alt="$ \Pr[ |Z| \geq |z| \mid \mu = 0] $" src="form_493.png"/>. Computed as <code>(2 * <a class="el" href="prob_8sql__in.html#a6c0a499faa80db26c0178f1e69cf7a50">normal_cdf</a>(-abs(z_statistic)))</code>.</li>
+</ul>
+</dd></dl>
+<dl class="section user"><dt>Usage</dt><dd><ul>
+<li>One-sample test: Test null hypothesis that the mean of a sample is at most (or equal to, respectively) <img class="formulaInl" alt="$ \mu_0 $" src="form_413.png"/>: <pre>SELECT (wsr_test(<em>value</em> - <em>mu_0</em> ORDER BY abs(<em>value</em>))).* FROM <em>source</em></pre></li>
+<li>Dependent paired test: Test null hypothesis that the mean difference between the first and second value in a pair is at most (or equal to, respectively) <img class="formulaInl" alt="$ \mu_0 $" src="form_413.png"/>: <pre>SELECT (wsr_test(<em>first</em> - <em>second</em> - <em>mu_0</em> ORDER BY abs(<em>first</em> - <em>second</em>))).* FROM <em>source</em></pre> If correctly determining ties is important (e.g., you may want to do so when comparing to software products that take <code>first</code>, <code>second</code>, and <code>mu_0</code> as individual parameters), supply the precision parameter. This can be done as follows: <pre>SELECT (wsr_test(
+    <em>first</em> - <em>second</em> - <em>mu_0</em>,
+    3 * 2^(-52) * greatest(first, second, mu_0)
+    ORDER BY abs(<em>first</em> - <em>second</em>)
+)).* FROM <em>source</em></pre> Here <img class="formulaInl" alt="$ 2^{-52} $" src="form_366.png"/> is the machine epsilon, which we scale to the magnitude of the input data and multiply with 3 because we have a sum with three terms.</li>
+</ul>
+</dd></dl>
+<dl class="section note"><dt>Note</dt><dd>This aggregate must be used as an ordered aggregate (<code>ORDER BY abs(<em>value</code></em>)) and will raise an exception if the absolute values are not ordered. </dd></dl>
+
+</div>
+</div>
+<a id="ac97c5f5015790b59645d69858e127645"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac97c5f5015790b59645d69858e127645">&#9670;&nbsp;</a></span>t_test_merge_states()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float8 [] t_test_merge_states </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state1</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state2</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a14fdcfa276fd1a7ea2e3adb41ebe7db4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a14fdcfa276fd1a7ea2e3adb41ebe7db4">&#9670;&nbsp;</a></span>t_test_one()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">aggregate float8 [] t_test_one </td>
+          <td>(</td>
+          <td class="paramtype">float8&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Given realizations <img class="formulaInl" alt="$ x_1, \dots, x_n $" src="form_184.png"/> of i.i.d. random variables <img class="formulaInl" alt="$ X_1, \dots, X_n \sim N(\mu, \sigma^2) $" src="form_403.png"/> with unknown parameters <img class="formulaInl" alt="$ \mu $" src="form_288.png"/> and <img class="formulaInl" alt="$ \sigma^2 $" src="form_306.png"/>, test the null hypotheses <img class="formulaInl" alt="$ H_0 : \mu \leq 0 $" src="form_404.png"/> and <img class="formulaInl" alt="$ H_0 : \mu = 0 $" src="form_405.png"/>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">value</td><td>Value of random variate <img class="formulaInl" alt="$ x_i $" src="form_63.png"/></td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>A composite value as follows. We denote by <img class="formulaInl" alt="$ \bar x $" src="form_406.png"/> the sample mean and by <img class="formulaInl" alt="$ s^2 $" src="form_407.png"/> the sample variance.<ul>
+<li><code>statistic FLOAT8</code> - Statistic <p class="formulaDsp">
+<img class="formulaDsp" alt="\[ t = \frac{\sqrt n \cdot \bar x}{s} \]" src="form_408.png"/>
+</p>
+ The corresponding random variable is Student-t distributed with <img class="formulaInl" alt="$ (n - 1) $" src="form_409.png"/> degrees of freedom.</li>
+<li><code>df FLOAT8</code> - Degrees of freedom <img class="formulaInl" alt="$ (n - 1) $" src="form_409.png"/></li>
+<li><code>p_value_one_sided FLOAT8</code> - Lower bound on one-sided p-value. In detail, the result is <img class="formulaInl" alt="$ \Pr[\bar X \geq \bar x \mid \mu = 0] $" src="form_410.png"/>, which is a lower bound on <img class="formulaInl" alt="$ \Pr[\bar X \geq \bar x \mid \mu \leq 0] $" src="form_411.png"/>. Computed as <code>(1.0 - <a class="el" href="prob_8sql__in.html#a5322531131074c23a2dbf067ee504ef7">students_t_cdf</a>(statistic))</code>.</li>
+<li><code>p_value_two_sided FLOAT8</code> - Two-sided p-value, i.e., <img class="formulaInl" alt="$ \Pr[ |\bar X| \geq |\bar x| \mid \mu = 0] $" src="form_412.png"/>. Computed as <code>(2 * <a class="el" href="prob_8sql__in.html#a5322531131074c23a2dbf067ee504ef7">students_t_cdf</a>(-abs(statistic)))</code>.</li>
+</ul>
+</dd></dl>
+<dl class="section user"><dt>Usage</dt><dd><ul>
+<li>One-sample t-test: Test null hypothesis that the mean of a sample is at most (or equal to, respectively) <img class="formulaInl" alt="$ \mu_0 $" src="form_413.png"/>: <pre>SELECT (t_test_one(<em>value</em> - <em>mu_0</em>)).* FROM <em>source</em></pre></li>
+<li>Dependent paired t-test: Test null hypothesis that the mean difference between the first and second value in each pair is at most (or equal to, respectively) <img class="formulaInl" alt="$ \mu_0 $" src="form_413.png"/>: <pre>SELECT (t_test_one(<em>first</em> - <em>second</em> - <em>mu_0</em>)).*
+              FROM <em>source</em></pre> </li>
+</ul>
+</dd></dl>
+
+</div>
+</div>
+<a id="ad570d893565618bcbbcbb01b3bb0a9b9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad570d893565618bcbbcbb01b3bb0a9b9">&#9670;&nbsp;</a></span>t_test_one_final()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">t_test_result t_test_one_final </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a3bd1bcc335a2da73d01b40e06f7d2eea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3bd1bcc335a2da73d01b40e06f7d2eea">&#9670;&nbsp;</a></span>t_test_one_transition()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float8 [] t_test_one_transition </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float8&#160;</td>
+          <td class="paramname"><em>value</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a5c306ba8380ce6567831fef4610e515b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5c306ba8380ce6567831fef4610e515b">&#9670;&nbsp;</a></span>t_test_two_pooled()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">aggregate float8 [] t_test_two_pooled </td>
+          <td>(</td>
+          <td class="paramtype">boolean&#160;</td>
+          <td class="paramname"><em>first</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float8&#160;</td>
+          <td class="paramname"><em>value</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Given realizations <img class="formulaInl" alt="$ x_1, \dots, x_n $" src="form_184.png"/> and <img class="formulaInl" alt="$ y_1, \dots, y_m $" src="form_414.png"/> of i.i.d. random variables <img class="formulaInl" alt="$ X_1, \dots, X_n \sim N(\mu_X, \sigma^2) $" src="form_415.png"/> and <img class="formulaInl" alt="$ Y_1, \dots, Y_m \sim N(\mu_Y, \sigma^2) $" src="form_416.png"/> with unknown parameters <img class="formulaInl" alt="$ \mu_X, \mu_Y, $" src="form_417.png"/> and <img class="formulaInl" alt="$ \sigma^2 $" src="form_306.png"/>, test the null hypotheses <img class="formulaInl" alt="$ H_0 : \mu_X \leq \mu_Y $" src="form_418.png"/> and <img class="formulaInl" alt="$ H_0 : \mu_X = \mu_Y $" src="form_419.png"/>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">first</td><td>Indicator whether <code>value</code> is from first sample <img class="formulaInl" alt="$ x_1, \dots, x_n $" src="form_184.png"/> (if <code>TRUE</code>) or from second sample <img class="formulaInl" alt="$ y_1, \dots, y_m $" src="form_414.png"/> (if <code>FALSE</code>) </td></tr>
+    <tr><td class="paramname">value</td><td>Value of random variate <img class="formulaInl" alt="$ x_i $" src="form_63.png"/> or <img class="formulaInl" alt="$ y_i $" src="form_61.png"/></td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>A composite value as follows. We denote by <img class="formulaInl" alt="$ \bar x, \bar y $" src="form_420.png"/> the sample means and by <img class="formulaInl" alt="$ s_X^2, s_Y^2 $" src="form_421.png"/> the sample variances.<ul>
+<li><code>statistic FLOAT8</code> - Statistic <p class="formulaDsp">
+<img class="formulaDsp" alt="\[ t = \frac{\bar x - \bar y}{s_p \sqrt{1/n + 1/m}} \]" src="form_422.png"/>
+</p>
+ where <p class="formulaDsp">
+<img class="formulaDsp" alt="\[ s_p^2 = \frac{\sum_{i=1}^n (x_i - \bar x)^2 + \sum_{i=1}^m (y_i - \bar y)^2} {n + m - 2} \]" src="form_423.png"/>
+</p>
+ is the <em>pooled variance</em>. The corresponding random variable is Student-t distributed with <img class="formulaInl" alt="$ (n + m - 2) $" src="form_424.png"/> degrees of freedom.</li>
+<li><code>df FLOAT8</code> - Degrees of freedom <img class="formulaInl" alt="$ (n + m - 2) $" src="form_424.png"/></li>
+<li><code>p_value_one_sided FLOAT8</code> - Lower bound on one-sided p-value. In detail, the result is <img class="formulaInl" alt="$ \Pr[\bar X - \bar Y \geq \bar x - \bar y \mid \mu_X = \mu_Y] $" src="form_425.png"/>, which is a lower bound on <img class="formulaInl" alt="$ \Pr[\bar X - \bar Y \geq \bar x - \bar y \mid \mu_X \leq \mu_Y] $" src="form_426.png"/>. Computed as <code>(1.0 - <a class="el" href="prob_8sql__in.html#a5322531131074c23a2dbf067ee504ef7">students_t_cdf</a>(statistic))</code>.</li>
+<li><code>p_value_two_sided FLOAT8</code> - Two-sided p-value, i.e., <img class="formulaInl" alt="$ \Pr[ |\bar X - \bar Y| \geq |\bar x - \bar y| \mid \mu_X = \mu_Y] $" src="form_427.png"/>. Computed as <code>(2 * <a class="el" href="prob_8sql__in.html#a5322531131074c23a2dbf067ee504ef7">students_t_cdf</a>(-abs(statistic)))</code>.</li>
+</ul>
+</dd></dl>
+<dl class="section user"><dt>Usage</dt><dd><ul>
+<li>Two-sample pooled t-test: Test null hypothesis that the mean of the first sample is at most (or equal to, respectively) the mean of the second sample: <pre>SELECT (t_test_pooled(<em>first</em>, <em>value</em>)).* FROM <em>source</em></pre> </li>
+</ul>
+</dd></dl>
+
+</div>
+</div>
+<a id="a0a0a8a579bbf0f0d1efcbf62223e3431"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0a0a8a579bbf0f0d1efcbf62223e3431">&#9670;&nbsp;</a></span>t_test_two_pooled_final()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">t_test_result t_test_two_pooled_final </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a1a835d80d1846a10a2c25b91ce81c6d2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1a835d80d1846a10a2c25b91ce81c6d2">&#9670;&nbsp;</a></span>t_test_two_transition()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float8 [] t_test_two_transition </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">boolean&#160;</td>
+          <td class="paramname"><em>first</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float8&#160;</td>
+          <td class="paramname"><em>value</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ac50750a0e0797ce24af1dc479b9699e1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac50750a0e0797ce24af1dc479b9699e1">&#9670;&nbsp;</a></span>t_test_two_unpooled()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">aggregate float8 [] t_test_two_unpooled </td>
+          <td>(</td>
+          <td class="paramtype">boolean&#160;</td>
+          <td class="paramname"><em>first</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float8&#160;</td>
+          <td class="paramname"><em>value</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Given realizations <img class="formulaInl" alt="$ x_1, \dots, x_n $" src="form_184.png"/> and <img class="formulaInl" alt="$ y_1, \dots, y_m $" src="form_414.png"/> of i.i.d. random variables <img class="formulaInl" alt="$ X_1, \dots, X_n \sim N(\mu_X, \sigma_X^2) $" src="form_428.png"/> and <img class="formulaInl" alt="$ Y_1, \dots, Y_m \sim N(\mu_Y, \sigma_Y^2) $" src="form_429.png"/> with unknown parameters <img class="formulaInl" alt="$ \mu_X, \mu_Y, \sigma_X^2, $" src="form_430.png"/> and <img class="formulaInl" alt="$ \sigma_Y^2 $" src="form_431.png"/>, test the null hypotheses <img class="formulaInl" alt="$ H_0 : \mu_X \leq \mu_Y $" src="form_418.png"/> and <img class="formulaInl" alt="$ H_0 : \mu_X = \mu_Y $" src="form_419.png"/>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">first</td><td>Indicator whether <code>value</code> is from first sample <img class="formulaInl" alt="$ x_1, \dots, x_n $" src="form_184.png"/> (if <code>TRUE</code>) or from second sample <img class="formulaInl" alt="$ y_1, \dots, y_m $" src="form_414.png"/> (if <code>FALSE</code>) </td></tr>
+    <tr><td class="paramname">value</td><td>Value of random variate <img class="formulaInl" alt="$ x_i $" src="form_63.png"/> or <img class="formulaInl" alt="$ y_i $" src="form_61.png"/></td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>A composite value as follows. We denote by <img class="formulaInl" alt="$ \bar x, \bar y $" src="form_420.png"/> the sample means and by <img class="formulaInl" alt="$ s_X^2, s_Y^2 $" src="form_421.png"/> the sample variances.<ul>
+<li><code>statistic FLOAT8</code> - Statistic <p class="formulaDsp">
+<img class="formulaDsp" alt="\[ t = \frac{\bar x - \bar y}{\sqrt{s_X^2/n + s_Y^2/m}} \]" src="form_432.png"/>
+</p>
+ The corresponding random variable is approximately Student-t distributed with <p class="formulaDsp">
+<img class="formulaDsp" alt="\[ \frac{(s_X^2 / n + s_Y^2 / m)^2}{(s_X^2 / n)^2/(n-1) + (s_Y^2 / m)^2/(m-1)} \]" src="form_433.png"/>
+</p>
+ degrees of freedom (Welch–Satterthwaite formula).</li>
+<li><code>df FLOAT8</code> - Degrees of freedom (as above)</li>
+<li><code>p_value_one_sided FLOAT8</code> - Lower bound on one-sided p-value. In detail, the result is <img class="formulaInl" alt="$ \Pr[\bar X - \bar Y \geq \bar x - \bar y \mid \mu_X = \mu_Y] $" src="form_425.png"/>, which is a lower bound on <img class="formulaInl" alt="$ \Pr[\bar X - \bar Y \geq \bar x - \bar y \mid \mu_X \leq \mu_Y] $" src="form_426.png"/>. Computed as <code>(1.0 - <a class="el" href="prob_8sql__in.html#a5322531131074c23a2dbf067ee504ef7">students_t_cdf</a>(statistic))</code>.</li>
+<li><code>p_value_two_sided FLOAT8</code> - Two-sided p-value, i.e., <img class="formulaInl" alt="$ \Pr[ |\bar X - \bar Y| \geq |\bar x - \bar y| \mid \mu_X = \mu_Y] $" src="form_427.png"/>. Computed as <code>(2 * <a class="el" href="prob_8sql__in.html#a5322531131074c23a2dbf067ee504ef7">students_t_cdf</a>(-abs(statistic)))</code>.</li>
+</ul>
+</dd></dl>
+<dl class="section user"><dt>Usage</dt><dd><ul>
+<li>Two-sample unpooled t-test: Test null hypothesis that the mean of the first sample is at most (or equal to, respectively) the mean of the second sample: <pre>SELECT (t_test_unpooled(<em>first</em>, <em>value</em>)).* FROM <em>source</em></pre> </li>
+</ul>
+</dd></dl>
+
+</div>
+</div>
+<a id="a8fe7f38d29bf835718adca811e36f15a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8fe7f38d29bf835718adca811e36f15a">&#9670;&nbsp;</a></span>t_test_two_unpooled_final()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">t_test_result t_test_two_unpooled_final </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a8f0431ace27ac78e9e1df9906f1f1c33"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8f0431ace27ac78e9e1df9906f1f1c33">&#9670;&nbsp;</a></span>wsr_test_final()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">wsr_test_result wsr_test_final </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a0d85654832dfa961cd13526c052642f3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0d85654832dfa961cd13526c052642f3">&#9670;&nbsp;</a></span>wsr_test_transition() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float8 [] wsr_test_transition </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float8&#160;</td>
+          <td class="paramname"><em>value</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float8&#160;</td>
+          <td class="paramname"><em>precision</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Given realizations <img class="formulaInl" alt="$ x_1, \dots, x_m $" src="form_434.png"/> and <img class="formulaInl" alt="$ y_1, \dots, y_m $" src="form_414.png"/> of i.i.d. random variables <img class="formulaInl" alt="$ X_1, \dots, X_m $" src="form_459.png"/> and i.i.d. <img class="formulaInl" alt="$ Y_1, \dots, Y_n $" src="form_460.png"/>, respectively, test the null hypothesis that the underlying distributions are equal, i.e., <img class="formulaInl" alt="$ H_0 : \forall i,j: \Pr[X_i &gt; Y_j] + \frac{\Pr[X_i = Y_j]}{2} = \frac 12 $" src="form_470.png"/>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">first</td><td>Determines whether the value belongs to the first (if <code>TRUE</code>) or the second sample (if <code>FALSE</code>) </td></tr>
+    <tr><td class="paramname">value</td><td>Value of random variate <img class="formulaInl" alt="$ x_i $" src="form_63.png"/> or <img class="formulaInl" alt="$ y_i $" src="form_61.png"/></td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>A composite value.<ul>
+<li><code>statistic FLOAT8</code> - Statistic <p class="formulaDsp">
+<img class="formulaDsp" alt="\[ z = \frac{u - \bar x}{\sqrt{\frac{mn(m+n+1)}{12}}} \]" src="form_471.png"/>
+</p>
+ where <img class="formulaInl" alt="$ u $" src="form_472.png"/> is the u-statistic computed as follows. The z-statistic is approximately standard normally distributed.</li>
+<li><code>u_statistic FLOAT8</code> - Statistic <img class="formulaInl" alt="$ u = \min \{ u_x, u_y \} $" src="form_473.png"/> where <p class="formulaDsp">
+<img class="formulaDsp" alt="\[ u_x = mn + \binom{m+1}{2} - \sum_{i=1}^m r_{x,i} \]" src="form_474.png"/>
+</p>
+ where <p class="formulaDsp">
+<img class="formulaDsp" alt="\[ r_{x,i} = \{ j \mid x_j &lt; x_i \} + \{ j \mid y_j &lt; x_i \} + \frac{\{ j \mid x_j = x_i \} + \{ j \mid y_j = x_i \} + 1}{2} \]" src="form_475.png"/>
+</p>
+ is defined as the rank of <img class="formulaInl" alt="$ x_i $" src="form_63.png"/> in the combined list of all <img class="formulaInl" alt="$ m+n $" src="form_476.png"/> observations. For ties, the average rank of all equal values is used.</li>
+<li><code>p_value_one_sided FLOAT8</code> - Approximate one-sided p-value, i.e., an approximate value for <img class="formulaInl" alt="$ \Pr[Z \geq z \mid H_0] $" src="form_477.png"/>. Computed as <code>(1.0 - <a class="el" href="prob_8sql__in.html#a6c0a499faa80db26c0178f1e69cf7a50">normal_cdf</a>(z_statistic))</code>.</li>
+<li><code>p_value_two_sided FLOAT8</code> - Approximate two-sided p-value, i.e., an approximate value for <img class="formulaInl" alt="$ \Pr[|Z| \geq |z| \mid H_0] $" src="form_478.png"/>. Computed as <code>(2 * <a class="el" href="prob_8sql__in.html#a6c0a499faa80db26c0178f1e69cf7a50">normal_cdf</a>(-abs(z_statistic)))</code>.</li>
+</ul>
+</dd></dl>
+<dl class="section user"><dt>Usage</dt><dd><ul>
+<li>Test null hypothesis that two samples stem from the same distribution: <pre>SELECT (mw_test(<em>first</em>, <em>value</em> ORDER BY <em>value</em>)).* FROM <em>source</em></pre></li>
+</ul>
+</dd></dl>
+<dl class="section note"><dt>Note</dt><dd>This aggregate must be used as an ordered aggregate (<code>ORDER BY <em>value</code></em>) and will raise an exception if values are not ordered. </dd></dl>
+
+</div>
+</div>
+<a id="a4093de00ab033f4900ce186d481fa012"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4093de00ab033f4900ce186d481fa012">&#9670;&nbsp;</a></span>wsr_test_transition() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float8 [] wsr_test_transition </td>
+          <td>(</td>
+          <td class="paramtype">float8 []&#160;</td>
+          <td class="paramname"><em>state</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float8&#160;</td>
+          <td class="paramname"><em>value</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_5782bb6b417390b9b62f39df14784c0c.html">incubator-madlib</a></li><li class="navelem"><a class="el" href="dir_b6a04cbbf19cfc3536564b9928d4f3dc.html">src</a></li><li class="navelem"><a class="el" href="dir_71a41f8b7207fbbc465a4e4d95589314.html">ports</a></li><li class="navelem"><a class="el" href="dir_bae1ff22d939d9eb42c7df1d0670bc94.html">postgres</a></li><li class="navelem"><a class="el" href="dir_4ce76aedc0a361354a0cdf298ef8a21b.html">modules</a></li><li class="navelem"><a class="el" href="dir_997c3e15c9d18078f134bb6226e9c9a5.html">stats</a></li><li class="navelem"><a class="el" href="hypothesis__tests_8sql__in.html">hypothesis_tests.sql_in</a></li>
+    <li class="footer">Generated on Tue May 16 2017 13:24:38 for MADlib by
+    <a href="http://www.doxygen.org/index.html">
+    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+  </ul>
+</div>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-madlib-site/blob/b5b51c69/docs/v1.11/index.html
----------------------------------------------------------------------
diff --git a/docs/v1.11/index.html b/docs/v1.11/index.html
new file mode 100644
index 0000000..9afcc61
--- /dev/null
+++ b/docs/v1.11/index.html
@@ -0,0 +1,139 @@
+<!-- HTML header for doxygen 1.8.4-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="keywords" content="madlib,postgres,greenplum,machine learning,data mining,deep learning,ensemble methods,data science,market basket analysis,affinity analysis,pca,lda,regression,elastic net,huber white,proportional hazards,k-means,latent dirichlet allocation,bayes,support vector machines,svm"/>
+<title>MADlib: Main Page</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+  $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<!-- hack in the navigation tree -->
+<script type="text/javascript" src="eigen_navtree_hacks.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+<link href="madlib_extra.css" rel="stylesheet" type="text/css"/>
+<!-- google analytics -->
+<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','//www.google-analytics.com/analytics.js','ga');
+  ga('create', 'UA-45382226-1', 'madlib.incubator.apache.org');
+  ga('send', 'pageview');
+</script>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectlogo"><a href="http://madlib.incubator.apache.org"><img alt="Logo" src="madlib.png" height="50" style="padding-left:0.5em;" border="0"/ ></a></td>
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">
+   <span id="projectnumber">1.11</span>
+   </div>
+   <div id="projectbrief">User Documentation for MADlib</div>
+  </td>
+   <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('index.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle">
+<div class="title">MADlib Documentation</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>Apache MADlib (incubating) is an open-source library for scalable in-database analytics. It provides data-parallel implementations of mathematical, statistical and machine learning methods for structured and unstructured data.</p>
+<p>The MADlib mission: to foster widespread development of scalable analytic skills, by harnessing efforts from commercial practice, academic research, and open-source development.</p>
+<p>Useful links: </p><ul>
+<li>
+<a href="http://madlib.incubator.apache.org">MADlib web site</a> </li>
+<li>
+<a href="https://cwiki.apache.org/confluence/display/MADLIB">MADlib wiki</a> </li>
+<li>
+<a href="https://issues.apache.org/jira/browse/MADLIB/">JIRAs for reporting bugs and reviewing backlog</a> </li>
+<li>
+<a href="https://mail-archives.apache.org/mod_mbox/incubator-madlib-user/">User mailing list</a> </li>
+<li>
+<a href="https://mail-archives.apache.org/mod_mbox/incubator-madlib-dev/">Dev mailing list</a> </li>
+<li>
+User documentation for earlier releases: <a href="../v1.10.0/index.html">v1.10.0</a>, <a href="../v1.9.1/index.html">v1.9.1</a>, <a href="../v1.9/index.html">v1.9</a>, <a href="../v1.8/index.html">v1.8</a>, <a href="../v1.7.1/index.html">v1.7.1</a>, <a href="../v1.7/index.html">v1.7</a>, <a href="../v1.6/index.html">v1.6</a>, <a href="../v1.5/index.html">v1.5</a>, <a href="../v1.4/index.html">v1.4</a>, <a href="../v1.3/index.html">v1.3</a>, <a href="../v1.2/index.html">v1.2</a>  </li>
+</ul>
+<p>Please refer to the <a href="https://github.com/apache/incubator-madlib/blob/master/README.md">ReadMe</a> file for information about incorporated third-party material. License information regarding MADlib and included third-party libraries can be found inside the <a href="https://github.com/apache/incubator-madlib/blob/master/LICENSE">License</a> directory. </p>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated on Tue May 16 2017 13:24:39 for MADlib by
+    <a href="http://www.doxygen.org/index.html">
+    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+  </ul>
+</div>
+</body>
+</html>