https://github.com/browshanravan/pvalue_inspector
Streamlit app for testing statistical significance between groups of data
https://github.com/browshanravan/pvalue_inspector
devcontainers package procedural-programming python shellscript statistics streamlit
Last synced: 6 months ago
JSON representation
Streamlit app for testing statistical significance between groups of data
- Host: GitHub
- URL: https://github.com/browshanravan/pvalue_inspector
- Owner: browshanravan
- License: mit
- Created: 2025-05-17T10:45:59.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2025-05-26T21:27:16.000Z (9 months ago)
- Last Synced: 2025-05-26T21:37:19.144Z (9 months ago)
- Topics: devcontainers, package, procedural-programming, python, shellscript, statistics, streamlit
- Language: Python
- Homepage:
- Size: 11.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# pvalue_inspector
This `README.md` was created using my package [README_genie](https://github.com/browshanravan/README_genie).
A Streamlit-based application for performing two-sample statistical significance tests (t-tests and Mann-Whitney U) on data stored in CSV files.
---
## About This Project
**pvalue_inspector** provides an interactive web UI where users can upload a CSV file, select two columns of interest, specify assumptions about variance and distribution, and instantly compute:
- Standard (Student’s) t-test
- Welch’s t-test
- Mann-Whitney U test
Results include the test name, p-value, and a simple null-hypothesis decision (Reject/Accept at α=0.05).
---
## Project Description
This tool is ideal for:
- Quick, exploratory hypothesis testing
- Teaching/demoing basic inferential statistics
- Lightweight, no-code statistical analysis
Key features:
- Automatic handling of equal/unequal sample sizes (drops NaNs when needed)
- Choice of parametric (t-tests) or non-parametric (Mann-Whitney U) methods
- Streamlined, three-step workflow: upload → select columns → choose test
- Runs entirely in the browser via Streamlit—no web-dev expertise required
---
## Getting Started
### Prerequisites
- Python 3.10 or higher
- pip
> Optionally, use the included Dev Container (VS Code + Docker) to spin up a ready-to-code environment.
### Installation
1. Clone the repository
```bash
git clone https://github.com/browshanravan/pvalue_inspector.git
cd pvalue_inspector
```
2. Install Python dependencies
```bash
pip install -r requirements.txt
```
### Dev Container Setup (VS Code)
1. Open this folder in VS Code.
2. Allow the “Dev Container” prompt to rebuild.
3. A container with Python 3.10 and all tools will be provisioned automatically.
---
## Quickstart
Option 1: Run the helper script
```bash
sh app.sh
```
This will install dependencies and launch the app on `localhost:8501`.
Option 2: Manual launch
```bash
pip install -r requirements.txt
streamlit run main.py --server.port 8501
```
Then open your browser at:
```
http://localhost:8501
```
---
## Usage
1. **Upload a CSV**
2. **Select two columns** from the dropdown
3. If **no missing values**, choose:
- “Are you assuming equal population variance?”
- “Are you assuming equal population distribution?”
4. Select one of:
- **Standard t-test** (equal variance)
- **Welch’s t-test** (unequal variance)
- **Mann-Whitney U** (non-parametric or unequal lengths)
5. View test statistic, p-value, and a “Rejected”/“Accepted” null-hypothesis outcome.
---
## Project Structure
```
.
├── app.sh # Install & launch script
├── main.py # Streamlit application
├── requirements.txt # Python dependencies
├── LICENSE # MIT License
├── .streamlit/config.toml # Streamlit UI/server config
├── .devcontainer/ # VS Code Dev Container config
│ ├── Dockerfile
│ └── devcontainer.json
└── pvalue_inspector/ # Python package
└── src/
└── utils.py # CSV‐reading utility
```
---
## Contributing
Contributions, issues and feature requests are welcome. Feel free to fork the repository and submit a pull request.
---
## License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.