This repository contains the code and data for the systematic literature review of papers with blockchain and edge computing nexus.
See SLR-Methodology-Coding-v0.pdf for the methodology of the systematic literature review and the data encoding.
Run PaperRemoval.ipynb to merge the papers from scopus, web of science, and ScienceDirect.
Then, remove the papers as the following criteria:
- Duplicate;
- Non-English
- Predatory journals or conferences
- Small pages (< 5)
- Outdated (year < 2015)
Finally, it outputs the final_output_file.csv that lists the remaining papers. The dataset and output files are listed in output_audit/.
The final reviewed papers dataset is in final_output_file.csv.
The descriptive_analysis/ folder contains code to derive the descriptive statistics of the reviewed papers.
The Encoding.docx file lists the encoding and the name of each attribute in the dataset.
Run data_analysis.ipynb to get statistical data and plots of the dataset. Code block 1 defines necessary functions and preprocessing steps. Code block 2-13 reads the dataset and outputs data used as input to generate graphs on rawgraphs.io. Code block 14-24 generates graphs and saves them in the descriptive_analysis/output/ folder.
It includes the data analysis of reviewed papers using clustering, multiple correspondence analysis (MCA), feature importance, correlation and classficiation. It lists the methodology coding and output results in Analytics_ML/:
DimensionToBurtMatrix.pytransforms the paper data inReviewedRecords.xlsxto binary data, where 1 denotes the paper studies the attribute of study dimension (e.g., PROB_TR); 0 denotes the paper does not have. It outputs the fileoutput/binary_matrix.csv.AttributeReduction.pyreduces the unimportanmt attributes of each paper data, whose binary values is 0, and evaluate the results using clustering and silhouette scores, shown inoutput/Clustering_feature_reduction/.MCAbasic.pyoutputs eigenvalues and contribution of attributes using MCA given the attribute-reduced binary matrix. It outputs inoutput/MCA/.MCAwithClustering.pyfinds the top important attributes for MCA latent dimensions, and find centroid points using clustering. It outputs inoutput/MCA/.Classification.pycalculates correlation and feature importance using multi-tree classfication method. It outputs inoutput/Classifier/.