http://git-wip-us.apache.org/repos/asf/madlib-site/blob/af0e5f14/docs/v1.15.1/group__grp__graph__measures.html ---------------------------------------------------------------------- diff --git a/docs/v1.15.1/group__grp__graph__measures.html b/docs/v1.15.1/group__grp__graph__measures.html new file mode 100644 index 0000000..6555dd4 --- /dev/null +++ b/docs/v1.15.1/group__grp__graph__measures.html @@ -0,0 +1,155 @@ +<!-- 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.14"/> +<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: Measures</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"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ + $(document).ready(initResizable); +/* @license-end */</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"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ + $(document).ready(function() { init_search(); }); +/* @license-end */ +</script> +<script type="text/x-mathjax-config"> + MathJax.Hub.Config({ + extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"], + jax: ["input/TeX","output/HTML-CSS"], +}); +</script><script type="text/javascript" async src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/MathJax.js"></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.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.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.15.1</span> + </div> + <div id="projectbrief">User Documentation for Apache 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.14 --> +<script type="text/javascript"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ +var searchBox = new SearchBox("searchBox", "search",false,'Search'); +/* @license-end */ +</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"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ +$(document).ready(function(){initNavTree('group__grp__graph__measures.html','');}); +/* @license-end */ +</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="#groups">Modules</a> </div> + <div class="headertitle"> +<div class="title">Measures<div class="ingroups"><a class="el" href="group__grp__graph.html">Graph</a></div></div> </div> +</div><!--header--> +<div class="contents"> +<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> +<p>A collection of metrics computed on a graph. </p> +<table class="memberdecls"> +<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="groups"></a> +Modules</h2></td></tr> +<tr class="memitem:group__grp__graph__avg__path__length"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__grp__graph__avg__path__length.html">Average Path Length</a></td></tr> +<tr class="memdesc:group__grp__graph__avg__path__length"><td class="mdescLeft"> </td><td class="mdescRight">Computes the average shortest-path length of a graph. <br /></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:group__grp__graph__closeness"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__grp__graph__closeness.html">Closeness</a></td></tr> +<tr class="memdesc:group__grp__graph__closeness"><td class="mdescLeft"> </td><td class="mdescRight">Computes the closeness centrality value of each node in the graph. <br /></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:group__grp__graph__diameter"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__grp__graph__diameter.html">Graph Diameter</a></td></tr> +<tr class="memdesc:group__grp__graph__diameter"><td class="mdescLeft"> </td><td class="mdescRight">Computes the diameter of a graph. <br /></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:group__grp__graph__vertex__degrees"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__grp__graph__vertex__degrees.html">In-Out Degree</a></td></tr> +<tr class="memdesc:group__grp__graph__vertex__degrees"><td class="mdescLeft"> </td><td class="mdescRight">Computes the degrees for each vertex. <br /></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +</table> +</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 Mon Oct 15 2018 11:24:30 for MADlib by + <a href="http://www.doxygen.org/index.html"> + <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li> + </ul> +</div> +</body> +</html>
http://git-wip-us.apache.org/repos/asf/madlib-site/blob/af0e5f14/docs/v1.15.1/group__grp__graph__measures.js ---------------------------------------------------------------------- diff --git a/docs/v1.15.1/group__grp__graph__measures.js b/docs/v1.15.1/group__grp__graph__measures.js new file mode 100644 index 0000000..6272fba --- /dev/null +++ b/docs/v1.15.1/group__grp__graph__measures.js @@ -0,0 +1,7 @@ +var group__grp__graph__measures = +[ + [ "Average Path Length", "group__grp__graph__avg__path__length.html", null ], + [ "Closeness", "group__grp__graph__closeness.html", null ], + [ "Graph Diameter", "group__grp__graph__diameter.html", null ], + [ "In-Out Degree", "group__grp__graph__vertex__degrees.html", null ] +]; \ No newline at end of file http://git-wip-us.apache.org/repos/asf/madlib-site/blob/af0e5f14/docs/v1.15.1/group__grp__graph__vertex__degrees.html ---------------------------------------------------------------------- diff --git a/docs/v1.15.1/group__grp__graph__vertex__degrees.html b/docs/v1.15.1/group__grp__graph__vertex__degrees.html new file mode 100644 index 0000000..37380dc --- /dev/null +++ b/docs/v1.15.1/group__grp__graph__vertex__degrees.html @@ -0,0 +1,273 @@ +<!-- 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.14"/> +<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: In-Out Degree</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"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ + $(document).ready(initResizable); +/* @license-end */</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"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ + $(document).ready(function() { init_search(); }); +/* @license-end */ +</script> +<script type="text/x-mathjax-config"> + MathJax.Hub.Config({ + extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"], + jax: ["input/TeX","output/HTML-CSS"], +}); +</script><script type="text/javascript" async src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/MathJax.js"></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.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.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.15.1</span> + </div> + <div id="projectbrief">User Documentation for Apache 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.14 --> +<script type="text/javascript"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ +var searchBox = new SearchBox("searchBox", "search",false,'Search'); +/* @license-end */ +</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"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ +$(document).ready(function(){initNavTree('group__grp__graph__vertex__degrees.html','');}); +/* @license-end */ +</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">In-Out Degree<div class="ingroups"><a class="el" href="group__grp__graph.html">Graph</a> » <a class="el" href="group__grp__graph__measures.html">Measures</a></div></div> </div> +</div><!--header--> +<div class="contents"> +<div class="toc"><b>Contents</b> <ul> +<li> +<a href="#degrees">In-out degrees</a> </li> +<li> +<a href="#examples">Examples</a> </li> +</ul> +</div><p>This function computes the degree of each node. The node degree is the number of edges adjacent to that node. The node in-degree is the number of edges pointing in to the node and node out-degree is the number of edges pointing out of the node.</p> +<p><a class="anchor" id="degrees"></a></p><dl class="section user"><dt>In-out degrees</dt><dd><pre class="syntax"> +graph_vertex_degrees( + vertex_table, + vertex_id, + edge_table, + edge_args, + out_table, + grouping_cols +) +</pre></dd></dl> +<p><b>Arguments</b> </p><dl class="arglist"> +<dt>vertex_table </dt> +<dd><p class="startdd">TEXT. Name of the table containing the vertex data for the graph. Must contain the column specified in the 'vertex_id' parameter below.</p> +<p class="enddd"></p> +</dd> +<dt>vertex_id </dt> +<dd><p class="startdd">TEXT, default = 'id'. Name of the column in 'vertex_table' containing vertex ids. The vertex ids are of type INTEGER with no duplicates. They do not need to be contiguous.</p> +<p class="enddd"></p> +</dd> +<dt>edge_table </dt> +<dd><p class="startdd">TEXT. Name of the table containing the edge data. The edge table must contain columns for source vertex, destination vertex and edge weight. Column naming convention is described below in the 'edge_args' parameter.</p> +<p class="enddd"></p> +</dd> +<dt>edge_args </dt> +<dd><p class="startdd">TEXT. A comma-delimited string containing multiple named arguments of the form "name=value". The following parameters are supported for this string argument:</p><ul> +<li>src (INTEGER): Name of the column containing the source vertex ids in the edge table. Default column name is 'src'.</li> +<li>dest (INTEGER): Name of the column containing the destination vertex ids in the edge table. Default column name is 'dest'.</li> +<li>weight (FLOAT8): Name of the column containing the edge weights in the edge table. Default column name is 'weight'.</li> +</ul> +<p class="enddd"></p> +</dd> +<dt>out_table </dt> +<dd><p class="startdd">TEXT. Name of the table to store the result. It contains a row for every vertex of every group and has the following columns (in addition to the grouping columns):</p><ul> +<li>vertex: The id for the source vertex. Will use the input vertex column 'id' for column naming.</li> +<li>indegree: Number of incoming edges to the vertex.</li> +<li>outdegree: Number of outgoing edges from the vertex.</li> +</ul> +<p class="enddd"></p> +</dd> +<dt>grouping_cols </dt> +<dd>TEXT, default = NULL. List of columns used to group the input into discrete subgraphs. These columns must exist in the edge table. When this value is null, no grouping is used and a single result is generated. </dd> +</dl> +<p><a class="anchor" id="examples"></a></p><dl class="section user"><dt>Examples</dt><dd></dd></dl> +<ol type="1"> +<li>Create vertex and edge tables to represent the graph: <pre class="syntax"> +DROP TABLE IF EXISTS vertex, edge; +CREATE TABLE vertex( + id INTEGER, + name TEXT + ); +CREATE TABLE edge( + src_id INTEGER, + dest_id INTEGER, + edge_weight FLOAT8 + ); +INSERT INTO vertex VALUES +(0, 'A'), +(1, 'B'), +(2, 'C'), +(3, 'D'), +(4, 'E'), +(5, 'F'), +(6, 'G'), +(7, 'H'); +INSERT INTO edge VALUES +(0, 1, 1.0), +(0, 2, 1.0), +(0, 4, 10.0), +(1, 2, 2.0), +(1, 3, 10.0), +(2, 3, 1.0), +(2, 5, 1.0), +(2, 6, 3.0), +(3, 0, 1.0), +(4, 0, -2.0), +(5, 6, 1.0), +(6, 7, 1.0); +</pre></li> +<li>Calculate the in-out degrees for each node: <pre class="syntax"> +DROP TABLE IF EXISTS degrees; +SELECT madlib.graph_vertex_degrees( + 'vertex', -- Vertex table + 'id', -- Vertix id column (NULL means use default naming) + 'edge', -- Edge table + 'src=src_id, dest=dest_id, weight=edge_weight', + 'degrees'); -- Output table of shortest paths +SELECT * FROM degrees ORDER BY id; +</pre> <pre class="result"> + id | indegree | outdegree +----+----------+----------- + 0 | 2 | 3 + 1 | 1 | 2 + 2 | 2 | 3 + 3 | 2 | 1 + 4 | 1 | 1 + 5 | 1 | 1 + 6 | 2 | 1 + 7 | 1 | 0 +</pre></li> +<li>Create a graph with 2 groups and find degrees for each group: <pre class="syntax"> +DROP TABLE IF EXISTS edge_gr; +CREATE TABLE edge_gr AS +( + SELECT *, 0 AS grp FROM edge + UNION + SELECT *, 1 AS grp FROM edge WHERE src_id < 6 AND dest_id < 6 +); +INSERT INTO edge_gr VALUES +(4,5,-20,1); +</pre></li> +<li>Find in-out degrees for all groups: <pre class="syntax"> +DROP TABLE IF EXISTS out_gr; +SELECT madlib.graph_vertex_degrees( + 'vertex', -- Vertex table + NULL, -- Vertex id column (NULL means use default naming) + 'edge_gr', -- Edge table + 'src=src_id, dest=dest_id, weight=edge_weight', + 'out_gr', -- Output table of shortest paths + 'grp' -- Grouping columns +); +SELECT * FROM out_gr WHERE id < 2 ORDER BY grp, id; +</pre> <pre class="result"> + grp | id | indegree | outdegree +----—+---—+---------—+----------— + 0 | 0 | 2 | 3 + 0 | 1 | 1 | 2 + 1 | 0 | 2 | 3 + 1 | 1 | 1 | 2 +(4 rows) +</pre> </li> +</ol> +</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 Mon Oct 15 2018 11:24:30 for MADlib by + <a href="http://www.doxygen.org/index.html"> + <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li> + </ul> +</div> +</body> +</html> http://git-wip-us.apache.org/repos/asf/madlib-site/blob/af0e5f14/docs/v1.15.1/group__grp__hits.html ---------------------------------------------------------------------- diff --git a/docs/v1.15.1/group__grp__hits.html b/docs/v1.15.1/group__grp__hits.html new file mode 100644 index 0000000..2581293 --- /dev/null +++ b/docs/v1.15.1/group__grp__hits.html @@ -0,0 +1,406 @@ +<!-- 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.14"/> +<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: HITS</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"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ + $(document).ready(initResizable); +/* @license-end */</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"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ + $(document).ready(function() { init_search(); }); +/* @license-end */ +</script> +<script type="text/x-mathjax-config"> + MathJax.Hub.Config({ + extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"], + jax: ["input/TeX","output/HTML-CSS"], +}); +</script><script type="text/javascript" async src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/MathJax.js"></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.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.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.15.1</span> + </div> + <div id="projectbrief">User Documentation for Apache 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.14 --> +<script type="text/javascript"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ +var searchBox = new SearchBox("searchBox", "search",false,'Search'); +/* @license-end */ +</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"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ +$(document).ready(function(){initNavTree('group__grp__hits.html','');}); +/* @license-end */ +</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">HITS<div class="ingroups"><a class="el" href="group__grp__graph.html">Graph</a></div></div> </div> +</div><!--header--> +<div class="contents"> +<div class="toc"><b>Contents</b> <ul> +<li> +<a href="#hits">HITS</a> </li> +<li> +<a href="#notes">Notes</a> </li> +<li> +<a href="#examples">Examples</a> </li> +<li> +<a href="#literature">Literature</a> </li> +</ul> +</div><p>Given a graph, the HITS (Hyperlink-Induced Topic Search) algorithm outputs the authority score and hub score of every vertex, where authority estimates the value of the content of the page and hub estimates the value of its links to other pages. This algorithm was originally developed to rate web pages [1].</p> +<p><a class="anchor" id="hits"></a></p><dl class="section user"><dt>HITS</dt><dd><pre class="syntax"> +hits( vertex_table, + vertex_id, + edge_table, + edge_args, + out_table, + max_iter, + threshold, + grouping_cols + ) +</pre></dd></dl> +<p><b>Arguments</b> </p><dl class="arglist"> +<dt>vertex_table </dt> +<dd><p class="startdd">TEXT. Name of the table containing the vertex data for the graph. Must contain the column specified in the 'vertex_id' parameter below.</p> +<p class="enddd"></p> +</dd> +<dt>vertex_id </dt> +<dd><p class="startdd">TEXT, default = 'id'. Name of the column in 'vertex_table' containing vertex ids. The vertex ids are of type INTEGER with no duplicates. They do not need to be contiguous.</p> +<p class="enddd"></p> +</dd> +<dt>edge_table </dt> +<dd><p class="startdd">TEXT. Name of the table containing the edge data. The edge table must contain columns for source vertex and destination vertex.</p> +<p class="enddd"></p> +</dd> +<dt>edge_args </dt> +<dd><p class="startdd">TEXT. A comma-delimited string containing multiple named arguments of the form "name=value". The following parameters are supported for this string argument:</p><ul> +<li>src (INTEGER): Name of the column containing the source vertex ids in the edge table. Default column name is 'src'.</li> +<li>dest (INTEGER): Name of the column containing the destination vertex ids in the edge table. Default column name is 'dest'.</li> +</ul> +<p class="enddd"></p> +</dd> +<dt>out_table </dt> +<dd><p class="startdd">TEXT. Name of the table to store the result of HITS. It will contain a row for every vertex from 'vertex_table' with the following columns:</p><ul> +<li>vertex_id : The id of a vertex. Will use the input parameter 'vertex_id' for column naming.</li> +<li>authority : The vertex authority score.</li> +<li>hub : The vertex hub score.</li> +<li>grouping_cols : Grouping column values (if any) associated with the vertex_id. </li> +</ul> +<p>A summary table is also created that contains information regarding the number of iterations required for convergence. It is named by adding the suffix '_summary' to the 'out_table' parameter.</p> +<p class="enddd"></p> +</dd> +<dt>max_iter (optional) </dt> +<dd><p class="startdd">INTEGER, default: 100. The maximum number of iterations allowed. Each iteration consists of both authority and hub phases.</p> +<p class="enddd"></p> +</dd> +<dt>threshold (optional) </dt> +<dd><p class="startdd">FLOAT8, default: (1/number of vertices * 1000). Threshold must be set to a value between 0 and 1, inclusive of end points. If the difference between two consecutive iterations of authority AND two consecutive iterations of hub is smaller than 'threshold', then the computation stops. That is, both authority and hub value differences must be below the specified threshold for the algorithm to stop. If you set the threshold to 0, then you will force the algorithm to run for the full number of iterations specified in 'max_iter'. </p> +<p class="enddd"></p> +</dd> +<dt>grouping_cols (optional) </dt> +<dd>TEXT, default: NULL. A single column or a list of comma-separated columns that divides the input data into discrete groups, resulting in one distribution per group. When this value is NULL, no grouping is used and a single model is generated for all data. <dl class="section note"><dt>Note</dt><dd>Expressions are not currently supported for 'grouping_cols'. </dd></dl> +</dd> +</dl> +<p><a class="anchor" id="notes"></a></p><dl class="section user"><dt>Notes</dt><dd></dd></dl> +<p>This algorithm supports multigraph and each duplicated edge is considered for counting when calculating authority and hub scores.</p> +<p><a class="anchor" id="examples"></a></p><dl class="section user"><dt>Examples</dt><dd></dd></dl> +<ol type="1"> +<li>Create vertex and edge tables to represent the graph: <pre class="syntax"> +DROP TABLE IF EXISTS vertex, edge; +CREATE TABLE vertex( + id INTEGER + ); +CREATE TABLE edge( + src INTEGER, + dest INTEGER, + user_id INTEGER + ); +INSERT INTO vertex VALUES +(0), +(1), +(2), +(3), +(4), +(5), +(6); +INSERT INTO edge VALUES +(0, 1, 1), +(0, 2, 1), +(0, 4, 1), +(1, 2, 1), +(1, 3, 1), +(2, 3, 1), +(2, 5, 1), +(2, 6, 1), +(3, 0, 1), +(4, 0, 1), +(5, 6, 1), +(6, 3, 1); +</pre></li> +<li>Running HITS with default values for optional parameters: <pre class="syntax"> +DROP TABLE IF EXISTS hits_out, hits_out_summary; +SELECT madlib.hits( + 'vertex', -- Vertex table + 'id', -- Vertex id column + 'edge', -- Edge table + 'src=src, dest=dest', -- Comma delimited string of edge arguments + 'hits_out'); -- Output table of HITS +SELECT * FROM hits_out ORDER BY id; +</pre> <pre class="result"> + id | authority | hub +----+----------------------+---------------------- + 0 | 8.43871829093e-07 | 0.338306115082665 + 1 | 0.158459587238244 | 0.527865350448059 + 2 | 0.405627969689677 | 0.675800764727558 + 3 | 0.721775835521825 | 3.95111934817e-07 + 4 | 0.158459587238244 | 3.95111934817e-07 + 5 | 0.316385413093048 | 0.189719957843216 + 6 | 0.405199928761102 | 0.337944978189241 +(7 rows) +</pre> <pre class="syntax"> +SELECT * FROM hits_out_summary; +</pre> <pre class="result"> + __iterations__ +-----------------+ + 17 +(1 row) +</pre></li> +<li>Running HITS with max_iter of 3 results in different authority and hub scores: <pre class="syntax"> +DROP TABLE IF EXISTS hits_out, hits_out_summary; +SELECT madlib.hits( + 'vertex', -- Vertex table + 'id', -- Vertex id column + 'edge', -- Edge table + 'src=src, dest=dest', -- Comma delimited string of edge arguments + 'hits_out', -- Output table + 3); -- Max iteration +SELECT * FROM hits_out ORDER BY id; +</pre> <pre class="result"> + id | authority | hub +----+-------------------+-------------------- + 0 | 0.08653327387778 | 0.375721659592363 + 1 | 0.18388320699029 | 0.533118571043218 + 2 | 0.43266636938891 | 0.654974244424525 + 3 | 0.70308285025699 | 0.040618557793769 + 4 | 0.18388320699029 | 0.040618557793769 + 5 | 0.30286645857224 | 0.182783510071961 + 6 | 0.38939973245002 | 0.330025782074373 +(7 rows) +</pre> <pre class="syntax"> +SELECT * FROM hits_out_summary; +</pre> <pre class="result"> + __iterations__ +-----------------+ + 3 +(1 row) +</pre></li> +<li>Running HITS with a low threshold of 0.00001 results in more iterations for convergence: <pre class="syntax"> +DROP TABLE IF EXISTS hits_out, hits_out_summary; +SELECT madlib.hits( + 'vertex', -- Vertex table + 'id', -- Vertex id column + 'edge', -- Edge table + 'src=src, dest=dest', -- Comma delimited string of edge arguments + 'hits_out', -- Output table + NULL, -- Default max_iter + 0.00001); -- Threshold +SELECT * FROM hits_out ORDER BY id; +</pre> <pre class="result"> + id | authority | hub +----+----------------------+--------------------- + 0 | 1.15243075426e-09 | 0.33800946769422 + 1 | 0.158264459912827 | 0.527792117750177 + 2 | 0.405384672299625 | 0.675965453766535 + 3 | 0.72186275724613 | 5.39583282614e-10 + 4 | 0.158264459912827 | 5.39583282614e-10 + 5 | 0.316493740997913 | 0.189793242747412 + 6 | 0.405356461070609 | 0.337985666133163 +(7 rows) +</pre> <pre class="syntax"> +SELECT * FROM hits_out_summary; +</pre> <pre class="result"> + __iterations__ +-----------------+ + 25 +(1 row) +</pre></li> +<li>Running HITS with both max_iter and threshold: <pre class="syntax"> +DROP TABLE IF EXISTS hits_out, hits_out_summary; +SELECT madlib.hits( + 'vertex', -- Vertex table + 'id', -- Vertex id column + 'edge', -- Edge table + 'src=src, dest=dest', -- Comma delimited string of edge arguments + 'hits_out', -- Output table + 20, -- Default max_iter + 0.00001); -- Threshold +SELECT * FROM hits_out ORDER BY id; +</pre> <pre class="result"> + id | authority | hub +----+----------------------+--------------------- + 0 | 7.11260011825e-08 | 0.33810307986005 + 1 | 0.158326035587958 | 0.527815233930963 + 2 | 0.405461453180491 | 0.675913495026452 + 3 | 0.721835343230399 | 3.33021322089e-08 + 4 | 0.158326035587958 | 3.33021322089e-08 + 5 | 0.316459563893809 | 0.189770119973925 + 6 | 0.405307074424261 | 0.337972831786458 +(7 rows) +</pre> <pre class="syntax"> +SELECT * FROM hits_out_summary; +</pre> <pre class="result"> + __iterations__ +-----------------+ + 20 +(1 row) +</pre> The algorithm stopped at 20 iterations even though the convergence for threshold of 0.00001 is at 25 iterations. This is because max_iter was set to 20.</li> +<li>Running HITS with grouping column and default values for max_iter and threshold. Add more rows to the edge table to create different graphs based on the user_id column. <pre class="syntax"> +INSERT INTO edge VALUES +(0, 1, 2), +(0, 2, 2), +(0, 4, 2), +(1, 2, 2), +(1, 3, 2), +(2, 3, 2), +(3, 0, 2), +(4, 0, 2), +(5, 6, 2), +(6, 3, 2); +DROP TABLE IF EXISTS hits_out, hits_out_summary; +SELECT madlib.hits( + 'vertex', -- Vertex table + 'id', -- Vertex id column + 'edge', -- Edge table + 'src=src, dest=dest', -- Comma delimited string of edge arguments + 'hits_out', -- Output table + NULL, -- Default max_iter + NULL, -- Threshold + 'user_id'); -- Grouping column +SELECT * FROM hits_out ORDER BY user_id, id; +</pre> <pre class="result"> + user_id | id | authority | hub +---------+----+----------------------+---------------------- + 1 | 0 | 8.43871829093e-07 | 0.338306115082665 + 1 | 1 | 0.158459587238244 | 0.527865350448059 + 1 | 2 | 0.405627969689677 | 0.675800764727558 + 1 | 3 | 0.721775835521825 | 3.95111934817e-07 + 1 | 4 | 0.158459587238244 | 3.95111934817e-07 + 1 | 5 | 0.316385413093048 | 0.189719957843216 + 1 | 6 | 0.405199928761102 | 0.337944978189241 + 2 | 0 | 1.60841750444e-05 | 0.632262085114062 + 2 | 1 | 0.316079985713431 | 0.632529390899584 + 2 | 2 | 0.632364174872359 | 0.316347297480213 + 2 | 3 | 0.632694582987791 | 8.04208767442e-06 + 2 | 4 | 0.316079985713431 | 8.04208767442e-06 + 2 | 5 | 0 | 1.22712519446e-10 + 2 | 6 | 2.45425034248e-10 | 0.316347297480213 +(14 rows) +</pre> <pre class="syntax"> +SELECT * FROM hits_out_summary order by user_id; +</pre> <pre class="result"> + user_id | __iterations__ +---------+---------------- + 1 | 17 + 2 | 16 +(2 rows) +</pre></li> +</ol> +<p><a class="anchor" id="literature"></a></p><dl class="section user"><dt>Literature</dt><dd></dd></dl> +<p>[1] Kleinerg, Jon M., "Authoritative Sources in a Hyperlinked +Environment", Journal of the ACM, Sept. 1999. <a href="https://www.cs.cornell.edu/home/kleinber/auth.pdf">https://www.cs.cornell.edu/home/kleinber/auth.pdf</a> </p> +</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 Mon Oct 15 2018 11:24:30 for MADlib by + <a href="http://www.doxygen.org/index.html"> + <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li> + </ul> +</div> +</body> +</html> http://git-wip-us.apache.org/repos/asf/madlib-site/blob/af0e5f14/docs/v1.15.1/group__grp__indicator.html ---------------------------------------------------------------------- diff --git a/docs/v1.15.1/group__grp__indicator.html b/docs/v1.15.1/group__grp__indicator.html new file mode 100644 index 0000000..677fbea --- /dev/null +++ b/docs/v1.15.1/group__grp__indicator.html @@ -0,0 +1,257 @@ +<!-- 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.14"/> +<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: Create Indicator Variables</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"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ + $(document).ready(initResizable); +/* @license-end */</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"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ + $(document).ready(function() { init_search(); }); +/* @license-end */ +</script> +<script type="text/x-mathjax-config"> + MathJax.Hub.Config({ + extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"], + jax: ["input/TeX","output/HTML-CSS"], +}); +</script><script type="text/javascript" async src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/MathJax.js"></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.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.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.15.1</span> + </div> + <div id="projectbrief">User Documentation for Apache 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.14 --> +<script type="text/javascript"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ +var searchBox = new SearchBox("searchBox", "search",false,'Search'); +/* @license-end */ +</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"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ +$(document).ready(function(){initNavTree('group__grp__indicator.html','');}); +/* @license-end */ +</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">Create Indicator Variables<div class="ingroups"><a class="el" href="group__grp__deprecated.html">Deprecated Modules</a></div></div> </div> +</div><!--header--> +<div class="contents"> +<dl class="section warning"><dt>Warning</dt><dd><em> This version of encoding categorical variables has been deprecated. The new module with more capability can be found here <a class="el" href="group__grp__encode__categorical.html">Encoding Categorical Variables</a></em></dd></dl> +<div class="toc"><b>Contents</b> <ul> +<li> +<a href="#categorical">Coding systems for categorical variables</a> </li> +<li> +<a href="#examples">Examples</a> </li> +</ul> +</div><p><a class="anchor" id="categorical"></a></p><dl class="section user"><dt>Coding systems for categorical variables</dt><dd>Categorical variables require special attention in regression analysis because, unlike dichotomous or continuous variables, they cannot be entered into the regression equation just as they are. For example, if you have a variable called race that is coded 1 = Hispanic, 2 = Asian, 3 = Black, 4 = White, then entering race in your regression will look at the linear effect of race, which is probably not what you intended. Instead, categorical variables like this need to be recoded into a series of indicator variables which can then be entered into the regression model. There are a variety of coding systems (also called as contrasts) that can be used when coding categorical variables. including dummy, effects, orthogonal, and helmert coding.</dd></dl> +<p>We currently only support the dummy coding technique. Dummy coding is used when a researcher wants to compare other groups of the predictor variable with one specific group of the predictor variable. Often, the specific group to compare with is called the reference group.</p> +<pre class="syntax"> +create_indicator_variables( + source_table, + output_table, + categorical_cols, + keep_null, + distributed_by + ) +</pre><p> <b>Arguments</b> </p><dl class="arglist"> +<dt>source_table </dt> +<dd>VARCHAR. Name of the source table, containing data for categorical variables. </dd> +<dt>output_table </dt> +<dd>VARCHAR. Name of result table. The output table has the same columns as the original table, adding new indicator variable columns for each categorical column. The column name for the indicator variable is <em>'categorical column name'</em>_<em>'categorical value'</em>. </dd> +<dt>categorical_cols </dt> +<dd>VARCHAR. Comma-separated string of column names of categorical variables that need to be dummy-coded. </dd> +<dt>keep_null (optional) </dt> +<dd>BOOLEAN. default: FALSE. Whether 'NULL' should be treated as one of the categories of the categorical variable. If True, then an indicator variable is created corresponding to the NULL value. If False, then all indicator variables for that record will be set to NULL. </dd> +<dt>distributed_by (optional) </dt> +<dd>VARCHAR. default: NULL. Columns to use for the distribution policy of the output table. When NULL, the distribution policy of 'source_table' will be used. This argument is not available for POSTGRESQL platforms. </dd> +</dl> +<p><a class="anchor" id="examples"></a></p><dl class="section user"><dt>Examples</dt><dd></dd></dl> +<ol type="1"> +<li>Use a subset of the abalone dataset. <pre class="example"> +DROP TABLE IF EXISTS abalone; +CREATE TABLE abalone ( + sex character varying, + length double precision, + diameter double precision, + height double precision +); +COPY abalone (sex, length, diameter, height) FROM stdin WITH DELIMITER '|' NULL as '@'; +M| 0.455 | 0.365 | 0.095 +F| 0.53 | 0.42 | 0.135 +M| 0.35 | 0.265 | 0.09 +F| 0.53 | 0.415 | 0.15 +M| 0.44 | 0.365 | 0.125 +F| 0.545 | 0.425 | 0.125 +I| 0.33 | 0.255 | 0.08 +F| 0.55 | 0.44 | 0.15 +I| 0.425 | 0.30 | 0.095 +F| 0.525 | 0.38 | 0.140 +M| 0.475 | 0.37 | 0.125 +F| 0.535 | 0.405 | 0.145 +M| 0.43 | 0.358 | 0.11 +F| 0.47 | 0.355 | 0.100 +M| 0.49 | 0.38 | 0.135 +F| 0.44 | 0.340 | 0.100 +M| 0.5 | 0.400 | 0.13 +F| 0.565 | 0.44 | 0.155 +I| 0.355 | 0.280 | 0.085 +F| 0.550 | 0.415 | 0.135 +| 0.475 | 0.37 | 0.125 +\. +</pre></li> +<li>Create new table with dummy-coded indicator variables <pre class="example"> +drop table if exists abalone_out; +select madlib.create_indicator_variables ('abalone', 'abalone_out', 'sex'); +select * from abalone_out; +</pre> <pre class="result"> + sex | length | diameter | height | sex_F | sex_I | sex_M +  -----+--------+----------+--------+--------+--------+------- + F | 0.53 | 0.42 | 0.135 | 1 | 0 | 0 + F | 0.53 | 0.415 | 0.15 | 1 | 0 | 0 + F | 0.545 | 0.425 | 0.125 | 1 | 0 | 0 + F | 0.55 | 0.44 | 0.15 | 1 | 0 | 0 + F | 0.525 | 0.38 | 0.14 | 1 | 0 | 0 + F | 0.535 | 0.405 | 0.145 | 1 | 0 | 0 + F | 0.47 | 0.355 | 0.1 | 1 | 0 | 0 + F | 0.44 | 0.34 | 0.1 | 1 | 0 | 0 + F | 0.565 | 0.44 | 0.155 | 1 | 0 | 0 + F | 0.55 | 0.415 | 0.135 | 1 | 0 | 0 + M | 0.455 | 0.365 | 0.095 | 0 | 0 | 1 + M | 0.35 | 0.265 | 0.09 | 0 | 0 | 0 + M | 0.44 | 0.365 | 0.125 | 0 | 0 | 0 + I | 0.33 | 0.255 | 0.08 | 0 | 1 | 0 + I | 0.425 | 0.3 | 0.095 | 0 | 1 | 0 + M | 0.475 | 0.37 | 0.125 | 0 | 0 | 0 + M | 0.43 | 0.358 | 0.11 | 0 | 0 | 0 + M | 0.49 | 0.38 | 0.135 | 0 | 0 | 0 + M | 0.5 | 0.4 | 0.13 | 0 | 0 | 0 + I | 0.355 | 0.28 | 0.085 | 0 | 1 | 0 + NULL | 0.55 | 0.415 | 0.135 | NULL | NULL | NULL +</pre></li> +<li>Create indicator variable for 'NULL' value (note the additional column '"sex_NULL"') <pre class="example"> +drop table if exists abalone_out; +select madlib.create_indicator_variables'abalone', 'abalone_out', 'sex', True); +select * from abalone_out; +</pre> <pre class="result"> + sex | length | diameter | height | sex_F | sex_I | sex_M | sex_NULL +  ---—+-----—+-------—+-----—+-----—+-----—+----—+----— + F | 0.53 | 0.42 | 0.135 | 1 | 0 | 0 | 0 + F | 0.53 | 0.415 | 0.15 | 1 | 0 | 0 | 0 + F | 0.545 | 0.425 | 0.125 | 1 | 0 | 0 | 0 + F | 0.55 | 0.44 | 0.15 | 1 | 0 | 0 | 0 + F | 0.525 | 0.38 | 0.14 | 1 | 0 | 0 | 0 + F | 0.535 | 0.405 | 0.145 | 1 | 0 | 0 | 0 + F | 0.47 | 0.355 | 0.1 | 1 | 0 | 0 | 0 + F | 0.44 | 0.34 | 0.1 | 1 | 0 | 0 | 0 + F | 0.565 | 0.44 | 0.155 | 1 | 0 | 0 | 0 + F | 0.55 | 0.415 | 0.135 | 1 | 0 | 0 | 0 + M | 0.455 | 0.365 | 0.095 | 0 | 0 | 1 | 0 + M | 0.35 | 0.265 | 0.09 | 0 | 0 | 0 | 0 + M | 0.44 | 0.365 | 0.125 | 0 | 0 | 0 | 0 + I | 0.33 | 0.255 | 0.08 | 0 | 1 | 0 | 0 + I | 0.425 | 0.3 | 0.095 | 0 | 1 | 0 | 0 + M | 0.475 | 0.37 | 0.125 | 0 | 0 | 0 | 0 + M | 0.43 | 0.358 | 0.11 | 0 | 0 | 0 | 0 + M | 0.49 | 0.38 | 0.135 | 0 | 0 | 0 | 0 + M | 0.5 | 0.4 | 0.13 | 0 | 0 | 0 | 0 + I | 0.355 | 0.28 | 0.085 | 0 | 1 | 0 | 0 + NULL | 0.55 | 0.415 | 0.135 | 0 | 0 | 0 | 1 +</pre> </li> +</ol> +</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 Mon Oct 15 2018 11:24:30 for MADlib by + <a href="http://www.doxygen.org/index.html"> + <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li> + </ul> +</div> +</body> +</html> http://git-wip-us.apache.org/repos/asf/madlib-site/blob/af0e5f14/docs/v1.15.1/group__grp__inf__stats.html ---------------------------------------------------------------------- diff --git a/docs/v1.15.1/group__grp__inf__stats.html b/docs/v1.15.1/group__grp__inf__stats.html new file mode 100644 index 0000000..d5e863c --- /dev/null +++ b/docs/v1.15.1/group__grp__inf__stats.html @@ -0,0 +1,146 @@ +<!-- 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.14"/> +<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: Inferential Statistics</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"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ + $(document).ready(initResizable); +/* @license-end */</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"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ + $(document).ready(function() { init_search(); }); +/* @license-end */ +</script> +<script type="text/x-mathjax-config"> + MathJax.Hub.Config({ + extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"], + jax: ["input/TeX","output/HTML-CSS"], +}); +</script><script type="text/javascript" async src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/MathJax.js"></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.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.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.15.1</span> + </div> + <div id="projectbrief">User Documentation for Apache 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.14 --> +<script type="text/javascript"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ +var searchBox = new SearchBox("searchBox", "search",false,'Search'); +/* @license-end */ +</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"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ +$(document).ready(function(){initNavTree('group__grp__inf__stats.html','');}); +/* @license-end */ +</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="#groups">Modules</a> </div> + <div class="headertitle"> +<div class="title">Inferential Statistics<div class="ingroups"><a class="el" href="group__grp__stats.html">Statistics</a></div></div> </div> +</div><!--header--> +<div class="contents"> +<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> +<p>Methods to compute inferential statistics of a dataset. </p> +<table class="memberdecls"> +<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="groups"></a> +Modules</h2></td></tr> +<tr class="memitem:group__grp__stats__tests"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__grp__stats__tests.html">Hypothesis Tests</a></td></tr> +<tr class="memdesc:group__grp__stats__tests"><td class="mdescLeft"> </td><td class="mdescRight">Provides functions to perform statistical hypothesis tests. <br /></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +</table> +</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 Mon Oct 15 2018 11:24:30 for MADlib by + <a href="http://www.doxygen.org/index.html"> + <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li> + </ul> +</div> +</body> +</html> http://git-wip-us.apache.org/repos/asf/madlib-site/blob/af0e5f14/docs/v1.15.1/group__grp__inf__stats.js ---------------------------------------------------------------------- diff --git a/docs/v1.15.1/group__grp__inf__stats.js b/docs/v1.15.1/group__grp__inf__stats.js new file mode 100644 index 0000000..7bfc14a --- /dev/null +++ b/docs/v1.15.1/group__grp__inf__stats.js @@ -0,0 +1,4 @@ +var group__grp__inf__stats = +[ + [ "Hypothesis Tests", "group__grp__stats__tests.html", null ] +]; \ No newline at end of file