kPFPMiner
- class PAMI.periodicFrequentPattern.topk.kPFPMiner.kPFPMiner.kPFPMiner(iFile, k, sep='\t')[source]
Bases:
_periodicFrequentPatterns
- Description:
Top - K is and algorithm to discover top periodic-frequent patterns in a temporal database.
- Reference:
- Likhitha, P., Ravikumar, P., Kiran, R.U., Watanobe, Y. (2022).
Discovering Top-k Periodic-Frequent Patterns in Very Large Temporal Databases. Big Data Analytics.
BDA 2022. Lecture Notes in Computer Science, vol 13773. Springer, Cham. https://doi.org/10.1007/978-3-031-24094-2_14
- Parameters:
iFile – str : Name of the Input file to mine complete set of periodic frequent pattern’s
oFile – str : Name of the output file to store complete set of periodic frequent pattern’s
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:
- iFilestr
Input file name or path of the input file
- k: int
User specified counte of top-k periodic frequent patterns
- sepstr
This variable is used to distinguish items from one another in a transaction. The default seperator is tab space or . However, the users can override their default separator.
- oFilestr
Name of the output file or the path of the output file
- 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
- memoryUSSfloat
To store the total amount of USS memory consumed by the program
- memoryRSSfloat
To store the total amount of RSS memory consumed by the program
- Methods:
- mine()
Mining process will start from here
- getPatterns()
Complete set of patterns will be retrieved with this function
- savePatterns(oFile)
Complete set of frequent patterns will be loaded in to a output file
- getPatternsAsDataFrame()
Complete set of frequent patterns will be loaded in to a dataframe
- getMemoryUSS()
Total amount of USS memory consumed by the mining process will be retrieved from this function
- getMemoryRSS()
Total amount of RSS memory consumed by the mining process will be retrieved from this function
- getRuntime()
Total amount of runtime taken by the mining process will be retrieved from this function
- creatingItemSets()
Scans the dataset or dataframes and stores in list format
- frequentOneItem()
Generates one frequent patterns
- eclatGeneration(candidateList)
It will generate the combinations of frequent items
- generateFrequentPatterns(tidList)
It will generate the combinations of frequent items from a list of items
Executing the code on terminal:
Format: (.venv) $ python3 kPFPMiner.py <inputFile> <outputFile> <k> Examples : (.venv) $ python3 kPFPMiner.py sampleDB.txt patterns.txt 10
**Sample run of the importing code:
import PAMI.periodicFrequentPattern.kPFPMiner as alg obj = alg.kPFPMiner(iFile, k) obj.startMine() periodicFrequentPatterns = obj.getPatterns() print("Total number of top-k Periodic Frequent Patterns:", len(periodicFrequentPatterns)) 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 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
- lno = 0