https://github.com/bilal-fazlani/splitcsv
A cli tool to split csv files
https://github.com/bilal-fazlani/splitcsv
csv file splitter utility
Last synced: 10 months ago
JSON representation
A cli tool to split csv files
- Host: GitHub
- URL: https://github.com/bilal-fazlani/splitcsv
- Owner: bilal-fazlani
- License: unlicense
- Created: 2020-10-31T12:47:54.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2020-11-10T17:54:01.000Z (over 5 years ago)
- Last Synced: 2025-06-11T02:12:19.483Z (10 months ago)
- Topics: csv, file, splitter, utility
- Language: Python
- Homepage:
- Size: 51.8 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# CSV-Split
_https://pypi.org/project/csv-split/_
```bash
pip install csv-split
```
## Vertical splitting (columns)
Splits a given CSV file vertically.
Accepts either a batch-size, or a split-pattern to create multiple files
from a single files. All files will contain different columns of original csv.
Order of columns will be maintained.
## Horizontal splitting (rows)
Not supported yet
## Usage
The below command will take large-file.csv and split it vertically into 3 files.
First file will have 10 columns, 2nd file will have 5, and the 3rd will have 12.
If there are more columns in the original file, they will be ignored.
```bash
csv-split -i ~/Downloads/large-file.csv -p 10,5,12
```
Instead of split-pattern, you can also specify batch size.
```bash
csv-split -i ~/Downloads/large-file.csv -b 7
```
By default, all the output files will be stored in a new directory called
`output`. Generated file names will have index number appended. For example,
`large-file_1.csv`, `large-file_2.csv`, ...
If you want to change the output directory, you can use `-o` option as shown below.
```bash
csv-split -i ~/Downloads/large-file.csv -b 10 -o ~/Downloads/splitted-data/
```
If this directory does not exist, it will be created.
This will create csv files and each csv file will contain 7 columns. Number of output files will
depend on number of columns in input files.