This project builds a web-based interactive dashboard to detect trends in financial journals. The dashboard can be modified to detect trends for other journals.
- Flask 0.12 or later
- Python 3.8 or later
- Python libraries: numpy, pandas, NLTK, sklearn, scipy, matplotlib, plotly, jupyter_dash, dash, wordcloud
- Anaconda Navigator
- Download and install Anaconda Navigator
- Create a virtual environment for the project following these steps:
- Click on the Home tab on the left panel of Anaconda and do the followings:
- Click on the Install button under Jupyter Notebook to install Jupyter Notebook
- Click on the Install button under CMD.exe Prompt to install the command prompt for current environment
- Clone this repository and save to the project folder
- Install the required libraries following these steps:
- In Anaconda > Home, click on the Launch button under Jupyter Notebook to open Jupyter Notebook in the web browser.
- Open and run 05_dashboard.ipynb notebook. Then click on the URL output from the last cell to launch the app. Note: Sometimes the port number might already be running on your system. In that case change the port numerb to 5000 or 7000.
- Download and install Anaconda Navigator
- Create a virtual environment for the project following these steps:
- Click on the Home tab on the left panel of Anaconda and do the followings:
- In the same terminal,
- Clone this repository using the command git clone https://github.com/Deep6Lab/trending-topics-dashboard.git
- Update the path using the command cd uidashboard
- Then run the command pip install -r requirements.txt
- In Anaconda > Home, click on the Launch button under Jupyter Notebook to open Jupyter Notebook in the web browser.
- Locate and open the folder titled "uidashboard".
- Open and run 05_dashboard.ipynb notebook. Then click on the URL output from the last cell to launch the app. Note: Sometimes the port number might already be running on your system. In that case change the port numerb to 5000 or 7000.
To build the app on new dataset or rebuild the app on the updated dataset, run the following Jupyter notebooks in the order listed:
- Data preprocessing: 00_data_preprocessing.ipynb
- Feature extraction: 01_features_extraction.ipynb
- Data Normalization/Reduction: 02_feature_engineering.ipynb
- Model Results: 04_model_results.ipynb
- Interactive Dashboard: 05_dashboard.ipynb