Test the App here: https://revenuemagnetapp.streamlit.app/
- Username: admin
- Password: admin
Revenue Magnet App is a sophisticated Streamlit-based web application designed to predict outcomes in three crucial business areas: Marketing, Sales, and Customer Success. Leveraging advanced machine learning models, the application provides insights that can drive strategic business decisions, enhance marketing efforts, streamline sales processes, and optimize customer success initiatives.
- User Authentication: Secure access with a simple login interface ensuring data confidentiality.
- Department-Specific Prediction Models:
- Marketing: Predicts the likelihood of lead conversion based on various inputs such as lead origin, lead source, website engagement, and more.
- Sales: Evaluates potential sales opportunities, forecasting the chances of winning a deal by analyzing factors like technology, country, sales medium, opportunity size, etc.
- Customer Success: Determines the probability of a customer terminating their contract, helping in proactive customer retention strategies. Factors considered include points in wallet, opportunity size, user feedback, and others.
- Data Input Flexibility:
- Manual Prediction: Allows users to input data manually for real-time predictions.
- Batch Prediction: Users can upload a CSV file for bulk predictions, enhancing efficiency for larger datasets.
- Interactive Data Visualizations: Provides insightful visualizations for batch data, helping in the deeper analysis and understanding of the trends and patterns.
The primary objective of the Revenue Magnet App is to empower businesses to make data-driven decisions across various departments:
- In Marketing: Enhancing lead conversion rates by predicting the likelihood of leads converting into customers.
- In Sales: Increasing sales efficiency and forecasting by identifying the deals most likely to succeed.
- In Customer Success: Proactively identifying at-risk customers, enabling timely interventions to improve customer retention.
- Streamlit: For building and hosting the web application.
- Pandas: For data manipulation and analysis.
- Joblib: For loading pre-trained machine learning models.
- Altair & Plotly Express: For creating interactive data visualizations.
- NumPy: For numerical operations.
The app includes a basic authentication mechanism to restrict access and protect sensitive data.
- Implementing more robust user authentication and authorization.
- Expanding the analytics dashboard for more in-depth insights.
- Integration with live data sources for real-time data analysis.
To run the application:
- Activate the virtual environment.
- Navigate to the application directory.
- Run
streamlit run app.py
.
-
For installing the virtual environment you can either use the Makefile and run
make setup
or install it manually with the following commands:make setup
After that active your environment by following commands:
source .venv/bin/activate
Or ....
-
Install the virtual environment and the required packages by following commands:
pyenv local 3.11.3 python -m venv .venv source .venv/bin/activate pip install --upgrade pip pip install -r requirements.txt
-
Install the virtual environment and the required packages by following commands.
For
PowerShell
CLI :pyenv local 3.11.3 python -m venv .venv .venv\Scripts\Activate.ps1 pip install --upgrade pip pip install -r requirements.txt
For
Git-bash
CLI :pyenv local 3.11.3 python -m venv .venv source .venv/Scripts/activate pip install --upgrade pip pip install -r requirements.txt
Note:
If you encounter an error when trying to runpip install --upgrade pip
, try using the following command:python.exe -m pip install --upgrade pip
In order to train the model and store test data in the data folder and the model in models run:
Note
: Make sure your environment is activated.
python example_files/train.py
In order to test that predict works on a test set you created run:
python example_files/predict.py models/linear_regression_model.sav data/X_test.csv data/y_test.csv