⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main_8cpp-source.html

📁 APRIOR算法的源程序.希望对大家有用,谁有FP-GROWTH算法的程序请给我发一份,谢谢.anne2422843@sina.com.cn
💻 HTML
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"><title>APRIORI algorithm: main.cpp Source File</title><link href="doxygen.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.3.9.1 --><div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div><h1>main.cpp</h1><a href="main_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment">00001 00031 <span class="preprocessor">#ifdef HAVE_CONFIG_H</span>00032 <span class="preprocessor"></span><span class="preprocessor">#include &lt;config.h&gt;</span>00033 <span class="preprocessor">#endif</span>00034 <span class="preprocessor"></span>00035 <span class="preprocessor">#include &lt;iostream&gt;</span>00036 <span class="preprocessor">#include &lt;fstream&gt;</span>00037 <span class="preprocessor">#include "<a class="code" href="Apriori_8hpp.html">Apriori.hpp</a>"</span>00038 <span class="keyword">using</span> <span class="keyword">namespace </span>std;00039 00040 00042 <a name="l00043"></a><a class="code" href="main_8cpp.html#a0">00043</a> <span class="keywordtype">void</span> <a class="code" href="main_8cpp.html#a0">usage</a>()00044 {00045    cerr &lt;&lt; <span class="stringliteral">"\nUsage: apriori basketfile outcomefile min_supp\n"</span>;00046    cerr &lt;&lt; <span class="stringliteral">"\n basketfile\t    file, that contains the baskets of itemcodes"</span>;00047    cerr &lt;&lt; <span class="stringliteral">"\n outcomefile\t    file to write the outcome"</span>;00048    cerr &lt;&lt; <span class="stringliteral">"\n min_supp\t    support threshold"</span>;00049 00050    cerr &lt;&lt; <span class="stringliteral">"\n\nFile formats:"</span>;00051    cerr &lt;&lt; <span class="stringliteral">"\n\nThe basket file is a plan text file. Each row represents"</span>;00052    cerr &lt;&lt; <span class="stringliteral">" a basket. "</span>&lt;&lt;endl;00053    cerr &lt;&lt; <span class="stringliteral">"A basket is a set of items seperated by a nonnumeric character."</span>;00054    cerr &lt;&lt; <span class="stringliteral">"\nIt can be for example a white space, comma, colon, etc. \n"</span>;00055    cerr &lt;&lt; <span class="stringliteral">"An item is represented by its code which is an integer number\n"</span>;00056    cerr &lt;&lt; <span class="stringliteral">"greater than or equal to 0."</span>;00057    cerr &lt;&lt; <span class="stringliteral">"\nFor more options please check the configuration"</span>;00058    cerr &lt;&lt; <span class="stringliteral">" file: .apriori_config."</span>;00059    cerr &lt;&lt; <span class="stringliteral">"\n\nHave a succesful mining ;-)"</span>;00060    cerr &lt;&lt; <span class="stringliteral">"\n\n\n\t\t\t\t\tFerenc Bodon\n\n"</span>;00061 }00062 <a name="l00063"></a><a class="code" href="main_8cpp.html#a1">00063</a> <span class="keywordtype">void</span> <a class="code" href="main_8cpp.html#a1">process_config_file</a>( <span class="keywordtype">bool</span>&amp; quiet, <span class="keywordtype">bool</span>&amp; store_input, 00064                           <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>&amp; size_threshold )00065 {00066    ifstream config_file(<span class="stringliteral">".apriori_config"</span>);00067    quiet=<span class="keyword">false</span>;00068    store_input=<span class="keyword">true</span>;00069 00070    <span class="keywordflow">if</span>( !config_file ) 00071    {00072       cerr &lt;&lt; <span class="stringliteral">"Warning: There is no configuration file (.apriori_config)!\n"</span>;00073       cerr &lt;&lt; <span class="stringliteral">"Default values are used!\n"</span>&lt;&lt;flush;00074    }00075    <span class="keywordflow">else</span>00076    {00077       <span class="keywordtype">char</span> temp_string[256];00078       config_file.getline(temp_string, 256);00079       config_file.getline(temp_string, 256);00080       config_file&gt;&gt;quiet;00081       <span class="keywordflow">if</span>( config_file.fail() )00082       { 00083          cerr&lt;&lt;<span class="stringliteral">"\nWarning: Failed to read in quiet value "</span>;00084          cerr&lt;&lt; <span class="stringliteral">"from the configuration file!"</span>;00085          cerr&lt;&lt;<span class="stringliteral">"\nDefault value (false) is used.\n"</span>;00086       }00087       config_file.getline(temp_string, 256);00088       config_file&gt;&gt;store_input;00089       <span class="keywordflow">if</span>( config_file.fail() )00090       { 00091          cerr&lt;&lt;<span class="stringliteral">"\nWarning: Failed to read in store_input value "</span>;00092          cerr&lt;&lt;<span class="stringliteral">"from the configuration file!"</span>;00093          cerr&lt;&lt;<span class="stringliteral">"\nDefault value (true) is used.\n"</span>;00094       }00095       config_file.getline(temp_string, 256);00096       config_file&gt;&gt;size_threshold;00097       <span class="keywordflow">if</span>( config_file.fail() )00098       { 00099          cerr&lt;&lt;<span class="stringliteral">"\nWarning: Failed to read in size_threshold value "</span>;00100          cerr&lt;&lt;<span class="stringliteral">"from the configuration file!"</span>;00101          cerr&lt;&lt;<span class="stringliteral">"\nDefault value (0) is used.\n"</span>;00102       }00103       config_file.close();00104    }00105 }00106 <a name="l00108"></a><a class="code" href="main_8cpp.html#a2">00108</a> <span class="keywordtype">int</span> <a class="code" href="main_8cpp.html#a2">process_arguments</a>( <span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> *argv[], ifstream&amp; basket_file, 00109                        <span class="keywordtype">double</span>&amp; min_supp )00110 {00111    <span class="keywordflow">if</span> ( argc &lt; 4 )00112    {00113      <a class="code" href="main_8cpp.html#a0">usage</a>();00114      cerr&lt;&lt;<span class="stringliteral">"\nError! There are 3 mandatory arguments!\n"</span>&lt;&lt;flush;00115      <span class="keywordflow">return</span> 1;00116    }00117    basket_file.open(argv[1]);00118    <span class="keywordflow">if</span>( !basket_file )00119    {00120       <a class="code" href="main_8cpp.html#a0">usage</a>();00121       cerr &lt;&lt; <span class="stringliteral">"\nError! The basket file can not be read!"</span>&lt;&lt; flush;00122       <span class="keywordflow">return</span> 1;00123    }00124    00125    min_supp = atof(argv[3]);00126    <span class="keywordflow">if</span> ( min_supp &lt;= 0 || min_supp &gt; 1 )00127    {00128       <a class="code" href="main_8cpp.html#a0">usage</a>();00129       cerr&lt;&lt;<span class="stringliteral">"\nError!\n min_supp should be in the interval (0,1].\n"</span>&lt;&lt;flush;00130       <span class="keywordflow">return</span> 1;00131    }00132       00133    <span class="keywordflow">return</span> 0;00134 }00135 <a name="l00136"></a><a class="code" href="main_8cpp.html#a3">00136</a> <span class="keywordtype">int</span> <a class="code" href="main_8cpp.html#a3">main</a>( <span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> *argv[] )00137 {00138    <span class="keywordtype">double</span> min_supp;00139    <span class="keywordtype">bool</span> store_input = <span class="keyword">true</span>,00140               quiet = <span class="keyword">false</span>;00141    <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> size_threshold;00142    ifstream basket_file;00143    00144    <a class="code" href="main_8cpp.html#a1">process_config_file</a>(quiet, store_input, size_threshold);00145    <span class="keywordflow">if</span>( <a class="code" href="main_8cpp.html#a2">process_arguments</a>( argc, argv, basket_file, min_supp ) ) <span class="keywordflow">return</span> 1;00146       00147    <span class="keywordflow">if</span>( !quiet )00148    {00149       cout &lt;&lt; <span class="stringliteral">"\n  **********************************************************"</span>;00150       cout &lt;&lt; <span class="stringliteral">"\n  ***                                                    ***"</span>;00151       cout &lt;&lt; <span class="stringliteral">"\n  ***        Trie based APRIORI algorithm                ***"</span>;00152       cout &lt;&lt; <span class="stringliteral">"\n  ***               version: 2.4.9                       ***"</span>;00153       cout &lt;&lt; <span class="stringliteral">"\n  ***                                                    ***"</span>;00154       cout &lt;&lt; <span class="stringliteral">"\n  ***    Implemented by: Ferenc Bodon (bodon@cs.bme.hu)  ***"</span>;00155       cout &lt;&lt; <span class="stringliteral">"\n  ***                                                    ***"</span>;00156       cout &lt;&lt; <span class="stringliteral">"\n  **********************************************************"</span>;00157       cout&lt;&lt; endl&lt;&lt;endl;00158    }00159   00160    <a class="code" href="classApriori.html">Apriori</a> apriori( basket_file, argv[2], store_input );00161    apriori.<a class="code" href="classApriori.html#a1">APRIORI_alg</a>( min_supp, quiet, size_threshold );00162    basket_file.close();00163    <span class="keywordflow">return</span> 0;00164 }00165 </pre></div><hr size="1"><address style="align: right;"><small>Generated on Fri Mar 11 14:48:06 2005 for APRIORI algorithm by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.3.9.1 </small></address></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -