DataAdvisor (data-advisor)
Autonomous Dataset Auditor, Diagnostic Engine & IoT Exam Code Bank
Engineered for students, practitioners, and engineers during timed practical examinations and data analysis tasks.
100% Offline: Requires zero internet connection to inspect datasets, search code, or retrieve solutions.
⚡ Quickstart
1. Search Any Keyword Across the Code Bank
Search instantly across all IoT questions, Arduino sketches, and Python scripts:
# Terminal CLI
data-advisor --search "dht22"
data-advisor --search "coap"
data-advisor --search "mqtt"
data-advisor --search "random forest"
Or inside a Python script / Jupyter Notebook:
from data_advisor import search
# List all available questions and experiments:
search()
# Search for any topic or keyword:
search("dht22")
search("coap")
search(["esp32", "mqtt"])
2. View / Retrieve Complete Question & Code Files (get_file)
Retrieve the full question statement, README setup instructions, and all source codes:
# Terminal CLI
data-advisor --get Q1
data-advisor --get Q3
data-advisor --get 08
data-advisor --get 15 --line-numbers
Or inside Python:
from data_advisor import get_file, read_file
# Print the complete question, instructions, and code:
get_file("Q1")
get_file("Q3", line_numbers=True)
# Or return the content as a string:
content = read_file("08")
3. Audit Any Exam Dataset & Generate Python Code (data_advisor)
When given an unknown dataset (CSV, TSV, Excel, Parquet):
# Terminal CLI: Print diagnostic report + executable Python solution:
data-advisor exam_dataset.csv --code
# Specify target column and save generated Python script to a file:
data-advisor exam_dataset.csv --target churn --output solution.py
Or inside Python:
from data_advisor import data_advisor
# 1-Line: Outputs diagnostic report AND prints full executable Python code:
data_advisor("exam_dataset.csv")
# With target variable and script export:
data_advisor("exam_dataset.csv", target="churn", output_script="solution.py")
📦 IoT Code Bank Architecture (21 Questions)
The code_bank/ directory contains 21 comprehensive IoT questions stored as structured .txt files:
Structure of Each Question File:
- Title Banner: Question / Experiment header.
FULL QUESTION: Complete official question text with marks and evaluation rubrics.SHORT QUESTION: Concise 1–2 sentence summary / objective.README & SETUP INSTRUCTIONS: Hardware wiring, pinout diagrams, dependencies, execution commands, and expected outputs.SOURCE CODE FILES: Complete executable code files clearly numbered (e.g.,1. server.py,2. client.py,3. app.pyor1. sketch.ino).
Complete List of 21 Questions:
| # | Question File | Category / Topic | Included Code Files |
|---|---|---|---|
| 1 | 01_dht22_serial.txt |
ESP32 DHT22 Temperature & Humidity (Serial) | 1. sketch.ino, 2. diagram.json, 3. libraries.txt |
| 2 | 02_ldr_serial.txt |
ESP32 LDR Light Intensity Monitoring | 1. sketch.ino, 2. diagram.json |
| 3 | 03_pir_serial.txt |
ESP32 PIR Motion Detection | 1. sketch.ino, 2. diagram.json |
| 4 | 04_mqtt_esp32_python.txt |
ESP32 MQTT Publisher & Python Subscriber | 1. sketch.ino, 2. subscriber.py, 3. diagram.json, 4. libraries.txt |
| 5 | 05_http_rest_supabase.txt |
HTTP REST API Cloud Storage & Web Dashboard | 1. send_http_data.py, 2. app_http.py |
| 6 | 06_mqtt_cloud_dashboard.txt |
MQTT Cloud Bridge & Streamlit Dashboard | 1. publisher.py, 2. mqtt_bridge.py, 3. app.py |
| 7 | 07_thingsboard_simulation.txt |
ThingsBoard MQTT Telemetry Simulation | 1. simulate_thingsboard.py, 2. environmental_dashboard.json |
| 8 | 08_coap_server_client_dashboard.txt |
CoAP Server & Client Dashboard | 1. server.py, 2. client.py |
| 9 | 09_mqtt_hivemq_mosquitto_dual.txt |
Dual MQTT (HiveMQ Public & Mosquitto Local) | 1. dual_broker.py |
| 10 | 10_coap_openmeteo_cloud.txt |
CoAP Environmental Monitoring & Cloud DB | 1. server.py, 2. app.py |
| 11 | 11_iss_tracker.txt |
Real-Time ISS Location Tracker & Plotter | 1. iss_tracker.py |
| 12 | 12_earthquake_dashboard.txt |
USGS Earthquake Analysis Dashboard | 1. app.py |
| 13 | 13_weather_analysis.txt |
Open-Meteo Weather Trend Visualizations | 1. weather_analysis.py |
| 14 | 14_air_quality_kochi.txt |
Kochi Air Quality Dashboard (PM2.5, PM10, AQI) | 1. app.py |
| 15 | 15_decision_tree_occupancy.txt |
Decision Tree Room Occupancy Classifier | 1. occupancy_cli.py, 2. occupancy_app.py |
| 16 | 16_linear_regression_beijing.txt |
Linear Regression Temperature Prediction | 1. temperature_cli.py, 2. temperature_app.py |
| 17 | 17_random_forest_air_quality.txt |
Random Forest 6-Class Air Quality Classifier | 1. air_quality_cli.py, 2. air_quality_app.py |
| 18 | Q1_dht22_temperature_humidity.txt |
CAE 2 Exam Section A: Q1 DHT22 Monitoring [30M] | 1. sketch.ino, 2. diagram.json, 3. libraries.txt |
| 19 | Q2_ldr_light_intensity.txt |
CAE 2 Exam Section A: Q2 LDR Intensity [30M] | 1. sketch.ino, 2. diagram.json |
| 20 | Q3_coap_air_quality_random_forest.txt |
CAE 2 Exam Section B: Q3 CoAP Air Quality & RF [30M] | 1. server.py, 2. client.py, 3. app.py |
| 21 | Q4_coap_weather_decision_tree.txt |
CAE 2 Exam Section B: Q4 CoAP Weather & DT [30M] | 1. server.py, 2. client.py, 3. app.py |
Adding More Questions: You can add your own
.txtfiles tocode_bank/at any time. The search and retrieval functions automatically detect new files dynamically.
🔒 100% Offline Capability
- Zero Network Required: Does not connect to the internet to run searches, load code files, or inspect datasets.
- Local Fallback Datasets: The machine learning scripts support offline CSV datasets (
city_day.csv,historical_weather_kochi.csv,datatraining.txt). - Local Protocol Testing: CoAP server/client examples bind to
127.0.0.1:5683(localhost UDP) and local MQTT useslocalhost:1883.
🚀 Building & Publishing to PyPI
1. Build the Package
python -m build
(Builds the universal wheel and source distribution bundling the complete library and code bank).
2. Upload to PyPI
python -m twine upload dist/*
- Username:
__token__ - Password:
<paste your PyPI API token starting with pypi-...>
💻 Installation on Other Machines
On any lab system, exam machine, or virtual environment:
# Install directly from PyPI
pip install data-advisor
# Or install locally in editable mode
pip install -e .
CLI Command Summary:
| Command | Action |
|---|---|
data-advisor --search list |
List all 21 questions & files in the code bank |
data-advisor --search "<keyword>" |
Search questions matching any keyword or phrase |
data-advisor --get <Q1/Q3/08> |
Print complete question statement, setup instructions & code |
data-advisor <dataset.csv> --code |
Audit dataset and output complete copy-pasteable Python code |
data-advisor <dataset.csv> -o run.py |
Save generated Python data science pipeline to run.py |
Metadata
Release files for data-advisor 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| data_advisor-0.3.0.tar.gz | 80.8 kB | Without provenance | Details for data_advisor-0.3.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| data_advisor-0.3.0-py3-none-any.whl | Python 3 | none | any | Details for data_advisor-0.3.0-py3-none-any.whl |
Total release size: 179.4 kB
Release files / data_advisor-0.3.0.tar.gz
| Download URL | data_advisor-0.3.0.tar.gz |
|---|---|
| Size | 80.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
09c47fd4592f803280a2030d40639ed9de29f175d392ca4b6663d442e51e7776
|
|
BLAKE2b-256 checksum How to use checksums |
0447af28ae0b5d63ed11fd47e26c947b0ecb16ce38abc2dfc760e5b4ff9415b8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.15
|
Release files / data_advisor-0.3.0-py3-none-any.whl
| Download URL | data_advisor-0.3.0-py3-none-any.whl |
|---|---|
| Size | 98.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
48c8bc53edebef56d8de28ef70c58026bd358cc9bb1002852d2294401e72a380
|
|
BLAKE2b-256 checksum How to use checksums |
ed9ce1b942a10c9472a8d93d2536236ea4f91a42956a2cae8df78387e959a84a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.15
|
Security for data-advisor 0.3.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.