Metadata-Version: 2.1
Name: UP-Tree
Version: 0.0.1
Summary: This is a simple module which takes input of transactions and provides it's UP-Tree, HeaderTable, and transactions dictionary
Home-page: https://github.com/miths/UPTree
Author: Mithil Ghinaiya
Author-email: mghinaiya@gmail.com
License: UNKNOWN
Description: # UP Tree
        
        > > This is a simple module which takes input of transactions and provides it's UP-Tree, HeaderTable, and transactions along with their item-utilities. Each node N of a UP-Tree has six entries: N.item is the item name of N; N. count is the node utility of N; N.num is the support count of N; N.parent indicates the parent node of N; N.nextNode is a node link which may point to a node having the same item name as N.item; N.children which is a dictionary, it contains item name as key and Node as value of all nodes whoes parent is N. The Header table is a structure employed to facilitate the traversal of the UP-Tree. A header table entry contains an item name, an estimated utility value, and a link. The link points to the first node in the UP-Tree having the same item name as the entry. The nodes whose item names are the same can be traversed efficiently by following the links in header table and the node links in the UP-Tree.
        
        ## usage:
        
        `upTree, headerTable, transanctions= UPTree(`transaction File path`, `profit file path`)`
        
        `upTree.disp()` # prints UP-Tree
        
        ### eg:
        
        `upTree, headerTable, transactions = UPTree('D:\user\data_proj_1.txt', 'D:\user\profit1.txt')`
        
        ## input format:
        
        > Two text files required. One for transactions(items and quantity) and the other for profit(for each item).
        
        ### eg:
        
        > **format:**
        
        item1 item2 item3 item4 **:** quantity(item1) quantity(item2) quantity(item3) quantity(item4)
        
        ..
        
        ..
        
        ..
        
        ![transaction.txt file](./img/transactions.png)
        
        > **format:**
        
        profit(item1)
        
        profit(item2)
        
        profit(item3)
        
        ..
        
        ..
        
        ![profit.txt file](./img/profit.png)
        
        Note: all item names should be numericals. Profit can be float or int. Profit value should be positive for all items. All quantity values should be greater than 0. All items must have a valid quantity in every transaction. All items must have profit value.
        
        ## Output:
        
        function returns
        
        1. upTree
        2. headertable
        3. transactions
        
        ### upTree
        
        can be printed by: `upTree.disp()`
        
        ![profit.txt file](./img/uptree.png)
        
        Each Node of UP-Tree displays following information: <item><item utility><number of occurences in database>
        
        ### headerTable
        
        can be printed by: `print(headerTable)`
        
        ![profit.txt file](./img/headerTable.png)
        
        headerTable is a dictionary.
        key: item, value: [transaction weighted utility, head Node of item(Node.nextNode points to other node of same item)]
        
        ### transactions
        
        can be printed by: `print(transactions)`
        
        ![profit.txt file](./img/final_transaction.png)
        
        transactions is a dictionary in decending order according to each item's transaction weighted utility
        
        key: transaction number, value: dictionary(item : item utility)
        
        ## Transaction Weighted Utility
        
        > > definition
        
        > > ![profit.txt file](./img/TWU_def.png)
        
        > > eg for this case
        
        > > ![profit.txt file](./img/TWU_ex.png)
        
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown
