- numpy
- pandas
- loguru
- saxpy
- matplotlib
You can use the requirements.txt file
pip3 install -r requirements.txt
For a single run:
python3 kp-anonymity.py k_value p_value paa_value /where/is/the/dataset.csv
- k_value: Value of k-anonymity (greater than p value)
- p_value: Value of the pattern, p-anonymity
- paa_value: Length of the string that can be used to describe the pattern
- /where/is/the/dataset.csv: Path of the input dataset
For run the tests and produce the histograms of execution time and instant value loss for each run:
python3 runTests.py
You can find the histograms inside "Output" folder as .png files.
The terminal output informs about:
- The parameters that give the lowest "execution time"
- The parameters that give the lowest "instant value loss".
In "Dataset" folder there are two datasets that can be use as input dataset. The input datasets are .csv files.
- MLTollsStackOverflow.csv
- NIFTY50-1_day_with_indicators.csv
- Sales_Transaction_Dataset_Weekly_Final.csv
Read the presentation: (k,P)-Anonymity
Work done by: