PAMI.frequentPattern.topk package
Submodules
PAMI.frequentPattern.topk.FAE module
- class PAMI.frequentPattern.topk.FAE.FAE(iFile, k, sep='\t')[source]
Bases:
_frequentPatternsAbout this algorithm
- Description:
Top - K is and algorithm to discover top frequent patterns in a transactional database.
- Reference:
Zhi-Hong Deng, Guo-Dong Fang: Mining Top-Rank-K Frequent Patterns: DOI: 10.1109/ICMLC.2007.4370261 · Source: IEEE Xplore https://ieeexplore.ieee.org/document/4370261
- Parameters:
iFile (str or URL or dataFrame) – Name of the Input file to mine complete set of frequent patterns.
oFile (str) – Name of the output file to store complete set of frequent patterns.
k (int) – User specified count of top frequent patterns.
minimum (int) – Minimum number of frequent patterns to consider in analysis.
sep (str) – This variable is used to distinguish items from one another in a transaction. The default seperator is tab space. However, the users can override their default separator.
- Attributes:
startTime (float) – To record the start time of the mining process.
endTime (float) – To record the completion time of the mining process.
finalPatterns (dict) – Storing the complete set of patterns in a dictionary variable.
memoryUSS (float) – To store the total amount of USS memory consumed by the program.
memoryRSS (float) – To store the total amount of RSS memory consumed by the program.
Execution methods
Terminal command
Format: (.venv) $ python3 FAE.py <inputFile> <outputFile> <K> Example Usage: (.venv) $ python3 FAE.py sampleDB.txt patterns.txt 10.0
Note
k will be considered as count of top frequent patterns to consider in analysis.
Calling from a python program
import PAMI.frequentPattern.topK.FAE as alg iFile = 'sampleDB.txt' K = 2 obj = alg.FAE(iFile, K) obj.mine() topKFrequentPatterns = obj.getPatterns() print("Total number of Frequent Patterns:", len(topKFrequentPatterns)) obj.save(oFile) Df = obj.getPatternInDataFrame() memUSS = obj.getMemoryUSS() print("Total Memory in USS:", memUSS) memRSS = obj.getMemoryRSS() print("Total Memory in RSS", memRSS) run = obj.getRuntime() print("Total ExecutionTime in seconds:", run)
Credits:
The complete program was written by P. Likhitha and revised by Tarun Sreepada under the supervision of Professor Rage Uday Kiran.
- getMemoryRSS()[source]
Total amount of RSS memory consumed by the mining process will be retrieved from this function
- Returns:
returning RSS memory consumed by the mining process
- Return type:
float
- getMemoryUSS()[source]
Total amount of USS memory consumed by the mining process will be retrieved from this function
- Returns:
returning USS memory consumed by the mining process
- Return type:
float
- getPatterns()[source]
Function to send the set of frequent patterns after completion of the mining process
- Returns:
returning frequent patterns
- Return type:
dict
- getPatternsAsDataFrame()[source]
Storing final frequent patterns in a dataframe
- Returns:
returning frequent patterns in a dataframe
- Return type:
pd.DataFrame
- getRuntime()[source]
Calculating the total amount of runtime taken by the mining process
- Returns:
returning total amount of runtime taken by the mining process
- Return type:
float