# CSVise CLI Tools
<div align="center">
**Beautiful CLI tools for CSV analysis, validation, and data cleaning with Rich-powered output**
[](https://badge.fury.io/py/csvise)
[](https://www.python.org/downloads/)
[](https://opensource.org/licenses/MIT)
[Installation](#-installation) • [Quick Start](#-quick-start) • [Features](#-features) • [Documentation](#-documentation)
<div align="center">
<img width="700" alt="Screenshot" src="https://github.com/user-attachments/assets/8343b73f-2887-48bc-b475-4abe2fa20c11" />
</div>
</div>
---
## 📋 Table of Contents
- [CSVise CLI Tools](#csvise-cli-tools)
- [📋 Table of Contents](#-table-of-contents)
- [🚀 Installation](#-installation)
- [From PyPI (Recommended)](#from-pypi-recommended)
- [From Source](#from-source)
- [⚡ Quick Start](#-quick-start)
- [Display CSV Data](#display-csv-data)
- [Analyze Data](#analyze-data)
- [Clean Data](#clean-data)
- [✨ Features](#-features)
- [Display \& Validation](#display--validation)
- [Data Analysis \& Statistics](#data-analysis--statistics)
- [Data Cleaning Operations](#data-cleaning-operations)
- [🎨 Rich UI Integration](#-rich-ui-integration)
- [📖 Documentation](#-documentation)
- [Command Reference](#command-reference)
- [Global Options](#global-options)
- [Custom Delimiter Example](#custom-delimiter-example)
- [Configuration](#configuration)
- [Examples](#examples)
- [Rich UI Examples](#rich-ui-examples)
- [Classic Mode Examples](#classic-mode-examples)
- [Data Analysis Examples](#data-analysis-examples)
- [Data Cleaning Examples](#data-cleaning-examples)
- [Example Output](#example-output)
- [🔧 Development](#-development)
- [Setup Development Environment](#setup-development-environment)
- [Run Tests](#run-tests)
- [Code Quality](#code-quality)
- [Build Package](#build-package)
- [📄 License](#-license)
---
## 🚀 Installation
### From PyPI (Recommended)
```bash
pip install csvise
```
### From Source
```bash
git clone https://github.com/rawsabsaid/csvise-cli-tool.git
cd csvise-cli-tool
pip install -e .
```
---
## ⚡ Quick Start
### Display CSV Data
```bash
# Beautiful table display with Rich formatting
csvise display data.csv
# Classic plain text output
csvise display data.csv --classic
```
### Analyze Data
```bash
# Comprehensive analysis
csvise analyze data.csv
# Detect outliers and correlations
csvise analyze data.csv --outliers --correlations
```
### Clean Data
```bash
# Remove duplicates and normalize whitespace
csvise clean data.csv --remove-duplicates --normalize-whitespace --output cleaned.csv
```
---
## ✨ Features
### Display & Validation
Beautiful CSV display with automatic delimiter detection and data validation:
```bash
csvise display FILENAME [OPTIONS]
```
**Options:**
- `--display` : Display formatted table output
- `--debug` : Enable debug output for troubleshooting
- `-v` : Verbose mode with detailed operation logs
- `-dl, --delimiter DELIMITER` : Set custom delimiter
- `-stf, --save_to_file OUTPUT` : Save output to file
- `--rich` : Use Rich formatting (default)
- `--classic` : Use classic plain text formatting
### Data Analysis & Statistics
Comprehensive data analysis with statistical insights:
```bash
csvise analyze FILENAME [OPTIONS]
```
**Options:**
- `--columns, -c` : Analyze specific columns (comma-separated)
- `--correlations` : Show correlation matrix for numeric columns
- `--outliers` : Detect outliers in numeric columns
- `--distribution` : Show value distribution for categorical columns
- `-v` : Verbose mode
- `--classic` : Use classic plain text formatting
### Data Cleaning Operations
Powerful data cleaning and transformation capabilities:
```bash
csvise clean FILENAME [OPTIONS]
```
**Options:**
- `--remove-duplicates` : Remove duplicate rows
- `--normalize-whitespace` : Normalize whitespace in all columns
- `--standardize-case` : Standardize text case (upper, lower, title, sentence)
- `--fill-missing` : Fill missing values (empty, mode, mean, median, custom)
- `--fill-value` : Custom value for missing data
- `--remove-empty-rows` : Remove rows with high empty cell percentage
- `--output, -o` : Output file for cleaned data
- `-v` : Verbose mode
- `--classic` : Use classic plain text formatting
### 🎨 Rich UI Integration
CSVise features beautiful Rich-powered CLI output:
- **Color-coded Tables**: Data types are color-coded (integers in green, floats in yellow, booleans in magenta)
- **Information Panels**: File statistics and validation issues in styled panels
- **Progress Indicators**: Visual feedback during data processing
- **Enhanced Messages**: Beautiful error and success message formatting
- **Type Highlighting**: Automatic highlighting of data type mismatches
**Modes:**
- **Rich Mode** (`--rich`): Enhanced visual experience with colors and panels **[default]**
- **Classic Mode** (`--classic`): Traditional plain text output for compatibility
---
## 📖 Documentation
### Command Reference
#### Global Options
- `--help` : Show help and documentation
- `--version` : Display current version
#### Custom Delimiter Example
```bash
csvise display data.csv --delimiter ";"
```
### Configuration
Customize default behavior with `csvtoolsConfig.json`:
```json
{
"additional_delimiters": ["|", ";", "###"],
"start_index": 1,
"num_rows_to_print": null,
"display_column_lines": true,
"display_row_lines": false,
"check_type_mismatches": true,
"string_case": "default"
}
```
### Examples
#### Rich UI Examples
```bash
# Beautiful table with validation
csvise display data.csv --debug
# Analysis with correlations
csvise analyze data.csv --correlations
# Clean data with progress feedback
csvise clean data.csv --remove-duplicates --normalize-whitespace
```
#### Classic Mode Examples
```bash
# Plain text output for scripts
csvise display data.csv --classic --debug
# Classic analysis output
csvise analyze data.csv --classic --outliers
```
#### Data Analysis Examples
```bash
# Comprehensive analysis
csvise analyze data.csv --correlations
# Analyze specific columns
csvise analyze data.csv --columns "Age,Salary,Department"
# Detect outliers
csvise analyze data.csv --outliers
# Show distributions
csvise analyze data.csv --distribution
```
#### Data Cleaning Examples
```bash
# Basic cleaning
csvise clean data.csv --remove-duplicates --normalize-whitespace
# Advanced cleaning pipeline
csvise clean data.csv \
--remove-duplicates \
--normalize-whitespace \
--standardize-case title \
--fill-missing mode \
--output cleaned_data.csv
# Remove empty rows
csvise clean data.csv --remove-empty-rows 0.5 --output cleaned.csv
```
### Example Output
```plaintext
[VERBOSE] Detecting delimiter from sample row: Name,Age,Occupation
[VERBOSE] Delimiter detected: ,
[VERBOSE] Detected columns: ['Name', 'Age', 'Occupation']
| Name | Age | Occupation
--------------+-----------+-------------
1 | Alice | 30 | Engineer
2 | Bob | 25 | Designer
3 | Charlie | Manager |
4 | Diana | 28 | 7
5 | Edward | 40.5 | Developer
6 | Frank | 20 | Student
7 | George | 45 | Retired
ROWS WITH INCORRECT LENGTH:
Row 3 is of length 2, expected 3
ROWS WITH POTENTIAL TYPE MISMATCHES:
Row 3, Column 2: Found str, expected int
Row 4, Column 3: Found int, expected str
Total number of rows with incorrect length: 1
Total number of type mismatches: 2
```
---
## 🔧 Development
### Setup Development Environment
```bash
git clone https://github.com/rawsabsaid/csvise-cli-tool.git
cd csvise-cli-tool
pip install -e ".[dev]"
```
### Run Tests
```bash
pytest tests/
```
### Code Quality
```bash
# Format code
black csvtools/
# Check linting
flake8 csvtools/
# Type checking
mypy csvtools/
```
### Build Package
```bash
python -m build
twine check dist/*
```
---
## 📄 License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
---
<div align="center">
**Made with ❤️ by [Rawsab Said](https://github.com/rawsabsaid)**
[GitHub](https://github.com/rawsabsaid/csvise-cli-tool) • [PyPI](https://pypi.org/project/csvise/) • [Issues](https://github.com/rawsabsaid/csvise-cli-tool/issues)
</div>
Raw data
{
"_id": null,
"home_page": "https://github.com/rawsabsaid/csvise-cli-tool",
"name": "csvise",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "Rawsab Said <rawsab04@gmail.com>",
"keywords": "csv, cli, data-analysis, validation, table, rich, formatting",
"author": "Rawsab Said",
"author_email": "Rawsab Said <rawsab04@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/9b/6f/00bcea375bfdb85f27a9f438c35f7747504d2b41fbc6de81d0708d676190/csvise-1.2.2.tar.gz",
"platform": null,
"description": "# CSVise CLI Tools\n\n<div align=\"center\">\n\n**Beautiful CLI tools for CSV analysis, validation, and data cleaning with Rich-powered output**\n\n[](https://badge.fury.io/py/csvise)\n[](https://www.python.org/downloads/)\n[](https://opensource.org/licenses/MIT)\n\n[Installation](#-installation) \u2022 [Quick Start](#-quick-start) \u2022 [Features](#-features) \u2022 [Documentation](#-documentation)\n\n<div align=\"center\">\n<img width=\"700\" alt=\"Screenshot\" src=\"https://github.com/user-attachments/assets/8343b73f-2887-48bc-b475-4abe2fa20c11\" />\n</div>\n\n</div>\n\n---\n\n## \ud83d\udccb Table of Contents\n\n- [CSVise CLI Tools](#csvise-cli-tools)\n - [\ud83d\udccb Table of Contents](#-table-of-contents)\n - [\ud83d\ude80 Installation](#-installation)\n - [From PyPI (Recommended)](#from-pypi-recommended)\n - [From Source](#from-source)\n - [\u26a1 Quick Start](#-quick-start)\n - [Display CSV Data](#display-csv-data)\n - [Analyze Data](#analyze-data)\n - [Clean Data](#clean-data)\n - [\u2728 Features](#-features)\n - [Display \\& Validation](#display--validation)\n - [Data Analysis \\& Statistics](#data-analysis--statistics)\n - [Data Cleaning Operations](#data-cleaning-operations)\n - [\ud83c\udfa8 Rich UI Integration](#-rich-ui-integration)\n - [\ud83d\udcd6 Documentation](#-documentation)\n - [Command Reference](#command-reference)\n - [Global Options](#global-options)\n - [Custom Delimiter Example](#custom-delimiter-example)\n - [Configuration](#configuration)\n - [Examples](#examples)\n - [Rich UI Examples](#rich-ui-examples)\n - [Classic Mode Examples](#classic-mode-examples)\n - [Data Analysis Examples](#data-analysis-examples)\n - [Data Cleaning Examples](#data-cleaning-examples)\n - [Example Output](#example-output)\n - [\ud83d\udd27 Development](#-development)\n - [Setup Development Environment](#setup-development-environment)\n - [Run Tests](#run-tests)\n - [Code Quality](#code-quality)\n - [Build Package](#build-package)\n - [\ud83d\udcc4 License](#-license)\n\n---\n\n## \ud83d\ude80 Installation\n\n### From PyPI (Recommended)\n\n```bash\npip install csvise\n```\n\n### From Source\n\n```bash\ngit clone https://github.com/rawsabsaid/csvise-cli-tool.git\ncd csvise-cli-tool\npip install -e .\n```\n\n---\n\n## \u26a1 Quick Start\n\n### Display CSV Data\n```bash\n# Beautiful table display with Rich formatting\ncsvise display data.csv\n\n# Classic plain text output\ncsvise display data.csv --classic\n```\n\n### Analyze Data\n```bash\n# Comprehensive analysis\ncsvise analyze data.csv\n\n# Detect outliers and correlations\ncsvise analyze data.csv --outliers --correlations\n```\n\n### Clean Data\n```bash\n# Remove duplicates and normalize whitespace\ncsvise clean data.csv --remove-duplicates --normalize-whitespace --output cleaned.csv\n```\n\n---\n\n## \u2728 Features\n\n### Display & Validation\n\nBeautiful CSV display with automatic delimiter detection and data validation:\n\n```bash\ncsvise display FILENAME [OPTIONS]\n```\n\n**Options:**\n- `--display` : Display formatted table output\n- `--debug` : Enable debug output for troubleshooting\n- `-v` : Verbose mode with detailed operation logs\n- `-dl, --delimiter DELIMITER` : Set custom delimiter\n- `-stf, --save_to_file OUTPUT` : Save output to file\n- `--rich` : Use Rich formatting (default)\n- `--classic` : Use classic plain text formatting\n\n### Data Analysis & Statistics\n\nComprehensive data analysis with statistical insights:\n\n```bash\ncsvise analyze FILENAME [OPTIONS]\n```\n\n**Options:**\n- `--columns, -c` : Analyze specific columns (comma-separated)\n- `--correlations` : Show correlation matrix for numeric columns\n- `--outliers` : Detect outliers in numeric columns\n- `--distribution` : Show value distribution for categorical columns\n- `-v` : Verbose mode\n- `--classic` : Use classic plain text formatting\n\n### Data Cleaning Operations\n\nPowerful data cleaning and transformation capabilities:\n\n```bash\ncsvise clean FILENAME [OPTIONS]\n```\n\n**Options:**\n- `--remove-duplicates` : Remove duplicate rows\n- `--normalize-whitespace` : Normalize whitespace in all columns\n- `--standardize-case` : Standardize text case (upper, lower, title, sentence)\n- `--fill-missing` : Fill missing values (empty, mode, mean, median, custom)\n- `--fill-value` : Custom value for missing data\n- `--remove-empty-rows` : Remove rows with high empty cell percentage\n- `--output, -o` : Output file for cleaned data\n- `-v` : Verbose mode\n- `--classic` : Use classic plain text formatting\n\n### \ud83c\udfa8 Rich UI Integration\n\nCSVise features beautiful Rich-powered CLI output:\n\n- **Color-coded Tables**: Data types are color-coded (integers in green, floats in yellow, booleans in magenta)\n- **Information Panels**: File statistics and validation issues in styled panels\n- **Progress Indicators**: Visual feedback during data processing\n- **Enhanced Messages**: Beautiful error and success message formatting\n- **Type Highlighting**: Automatic highlighting of data type mismatches\n\n**Modes:**\n- **Rich Mode** (`--rich`): Enhanced visual experience with colors and panels **[default]**\n- **Classic Mode** (`--classic`): Traditional plain text output for compatibility\n\n---\n\n## \ud83d\udcd6 Documentation\n\n### Command Reference\n\n#### Global Options\n- `--help` : Show help and documentation\n- `--version` : Display current version\n\n#### Custom Delimiter Example\n```bash\ncsvise display data.csv --delimiter \";\"\n```\n\n### Configuration\n\nCustomize default behavior with `csvtoolsConfig.json`:\n\n```json\n{\n \"additional_delimiters\": [\"|\", \";\", \"###\"],\n \"start_index\": 1,\n \"num_rows_to_print\": null,\n \"display_column_lines\": true,\n \"display_row_lines\": false,\n \"check_type_mismatches\": true,\n \"string_case\": \"default\"\n}\n```\n\n### Examples\n\n#### Rich UI Examples\n```bash\n# Beautiful table with validation\ncsvise display data.csv --debug\n\n# Analysis with correlations\ncsvise analyze data.csv --correlations\n\n# Clean data with progress feedback\ncsvise clean data.csv --remove-duplicates --normalize-whitespace\n```\n\n#### Classic Mode Examples\n```bash\n# Plain text output for scripts\ncsvise display data.csv --classic --debug\n\n# Classic analysis output\ncsvise analyze data.csv --classic --outliers\n```\n\n#### Data Analysis Examples\n```bash\n# Comprehensive analysis\ncsvise analyze data.csv --correlations\n\n# Analyze specific columns\ncsvise analyze data.csv --columns \"Age,Salary,Department\"\n\n# Detect outliers\ncsvise analyze data.csv --outliers\n\n# Show distributions\ncsvise analyze data.csv --distribution\n```\n\n#### Data Cleaning Examples\n```bash\n# Basic cleaning\ncsvise clean data.csv --remove-duplicates --normalize-whitespace\n\n# Advanced cleaning pipeline\ncsvise clean data.csv \\\n --remove-duplicates \\\n --normalize-whitespace \\\n --standardize-case title \\\n --fill-missing mode \\\n --output cleaned_data.csv\n\n# Remove empty rows\ncsvise clean data.csv --remove-empty-rows 0.5 --output cleaned.csv\n```\n\n### Example Output\n\n```plaintext\n[VERBOSE] Detecting delimiter from sample row: Name,Age,Occupation\n[VERBOSE] Delimiter detected: ,\n[VERBOSE] Detected columns: ['Name', 'Age', 'Occupation']\n\n | Name | Age | Occupation \n--------------+-----------+-------------\n1 | Alice | 30 | Engineer \n2 | Bob | 25 | Designer \n3 | Charlie | Manager | \n4 | Diana | 28 | 7 \n5 | Edward | 40.5 | Developer \n6 | Frank | 20 | Student \n7 | George | 45 | Retired \n\nROWS WITH INCORRECT LENGTH:\nRow 3 is of length 2, expected 3\n\nROWS WITH POTENTIAL TYPE MISMATCHES:\nRow 3, Column 2: Found str, expected int\nRow 4, Column 3: Found int, expected str\n\nTotal number of rows with incorrect length: 1\nTotal number of type mismatches: 2\n```\n\n---\n\n## \ud83d\udd27 Development\n\n### Setup Development Environment\n\n```bash\ngit clone https://github.com/rawsabsaid/csvise-cli-tool.git\ncd csvise-cli-tool\npip install -e \".[dev]\"\n```\n\n### Run Tests\n\n```bash\npytest tests/\n```\n\n### Code Quality\n\n```bash\n# Format code\nblack csvtools/\n\n# Check linting\nflake8 csvtools/\n\n# Type checking\nmypy csvtools/\n```\n\n### Build Package\n\n```bash\npython -m build\ntwine check dist/*\n```\n\n---\n\n## \ud83d\udcc4 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n---\n\n<div align=\"center\">\n\n**Made with \u2764\ufe0f by [Rawsab Said](https://github.com/rawsabsaid)**\n\n[GitHub](https://github.com/rawsabsaid/csvise-cli-tool) \u2022 [PyPI](https://pypi.org/project/csvise/) \u2022 [Issues](https://github.com/rawsabsaid/csvise-cli-tool/issues)\n\n</div>\n",
"bugtrack_url": null,
"license": null,
"summary": "CLI Tools for Tabular Data - CSV analysis, validation, and beautiful display",
"version": "1.2.2",
"project_urls": {
"Bug Tracker": "https://github.com/rawsabsaid/csvise-cli-tool/issues",
"Documentation": "https://github.com/rawsabsaid/csvise-cli-tool#readme",
"Homepage": "https://github.com/rawsabsaid/csvise-cli-tool",
"Repository": "https://github.com/rawsabsaid/csvise-cli-tool",
"Source Code": "https://github.com/rawsabsaid/csvise-cli-tool"
},
"split_keywords": [
"csv",
" cli",
" data-analysis",
" validation",
" table",
" rich",
" formatting"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "a104defc634a767b2e73d7593bd17fe03b355dd2f5bde8861fa25ccfc2b8e8de",
"md5": "9356782e421eb21423679de0de9f9c55",
"sha256": "26ebfa86cb1e1e3a9321d8b2bdbe44a3cd09f94e0f36c40dff3f87d73eb47394"
},
"downloads": -1,
"filename": "csvise-1.2.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "9356782e421eb21423679de0de9f9c55",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 26593,
"upload_time": "2025-08-19T20:12:34",
"upload_time_iso_8601": "2025-08-19T20:12:34.769801Z",
"url": "https://files.pythonhosted.org/packages/a1/04/defc634a767b2e73d7593bd17fe03b355dd2f5bde8861fa25ccfc2b8e8de/csvise-1.2.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "9b6f00bcea375bfdb85f27a9f438c35f7747504d2b41fbc6de81d0708d676190",
"md5": "b04f9b81f726563267584e934d6ea5d0",
"sha256": "36f001dd71304aafa3946cbaecd7f1fbb4ba6d34a6f74239c9247474830d7045"
},
"downloads": -1,
"filename": "csvise-1.2.2.tar.gz",
"has_sig": false,
"md5_digest": "b04f9b81f726563267584e934d6ea5d0",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 24165,
"upload_time": "2025-08-19T20:12:38",
"upload_time_iso_8601": "2025-08-19T20:12:38.425753Z",
"url": "https://files.pythonhosted.org/packages/9b/6f/00bcea375bfdb85f27a9f438c35f7747504d2b41fbc6de81d0708d676190/csvise-1.2.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-19 20:12:38",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "rawsabsaid",
"github_project": "csvise-cli-tool",
"github_not_found": true,
"lcname": "csvise"
}