SO
sonicfurqan/Process-Parse-Merge-CSV
Merging and updating csv script
Process - Parse - Merge CSV
- Merge CSV
- Process CSV for VLOOKUP
Modules Required
Run Setup to install required dependency
python setup.py
Parameters in paramters.py file
Common
- VALUES_TO_BE_REPLACED_BY_NULL
- CHUNK
- PARENT_FILE_LOCATION
- CHILD_FILE_LOCATION
- PARENT_PRIMARY_KEY
- CHILD_FOREIGN_KEY
Merge
- SOURCE_COLUMN_NAME
- PARENT_SOURCE_VALUE
- CHILD_SOURCE_VALUE
VLookup
- CHILD_COLUMN_TO_FETCH_DATA
- PARENT_COLUMN_TO_PLACE_DATA
Operation in run.py file
Main
- MERGE_DATA
- REPLACE_DIFFERENCE
- VLOOKUP
Sub
- MERGE_HEADERS
- CLEAN_EMPTY_COLUMNS
- ADD_SOURCE_COLUMN
- OUTER_JOIN
- OVERRIDE_PARENTDATA
Run Merge Script
For running a script to merge 2 CSV
python run.py
Example Merge
Master Example.csv
| Id | Name | |
|---|---|---|
| 2 | Bb | |
| 3 | C@b.com | |
| 4 | Db | D@b.com |
| 6 | Gb | |
| 8 | F@b.com |
Child Example.csv
| EXT_Id | Name | |
|---|---|---|
| 1 | Ab | a@b.com |
| 2 | b@b.com | |
| 3 | Cb | |
| 4 | asdf | as@df.com |
| 5 |
CSV after Outer Join
| Id | Name | EXT_Id | SOURCE | |
|---|---|---|---|---|
| 6 | Gb | Master | ||
| 2 | Bb | b@b.com | 2 | Master/Child |
| 3 | Cb | C@b.com | 3 | Master/Child |
| 4 | Db | D@b.com | 4 | Master/Child |
| 8 | F@b.com | Master | ||
| Ab | a@b.com | 1 | Child | |
| a@b.com | 5 | Child |
CSV after inner Join with override False
| Id | Name | EXT_Id | SOURCE | |
|---|---|---|---|---|
| 2 | Bb | b@b.com | 2 | Master/Child |
| 3 | Cb | C@b.com | 3 | Master/Child |
| 4 | Db | D@b.com | 4 | Master/Child |
CSV after inner Join with override True
| Id | Name | EXT_Id | SOURCE | |
|---|---|---|---|---|
| 2 | Bb | b@b.com | 2 | Master/Child |
| 3 | Cb | C@b.com | 3 | Master/Child |
| 4 | asdf | as@df.com | 4 | Master/Child |
Example VLOOKUP
Target Example_new.csv
| Id | Name |
|---|---|
| 1 | a |
| 2 | b |
| 3 | c |
| 4 | d |
| 5 | e |
| f | |
| g | |
| i | |
| j |
Lookup Example_old.csv
| Old_Id | New_id | Name |
|---|---|---|
| 1 | 100 | a |
| 1 | 1000 | aa |
| 2 | 200 | b |
| 3 | 300 | c |
| 4 | 400 | d |
| 5 | 500 | e |
| 6 | 600 | FF |
| 7 | 700 | GG |
| 8 | 800 | HH |
Lookup Processed Example_new.csv
| Id | Name |
|---|---|
| f | |
| g | |
| i | |
| j | |
| 100 | a |
| 200 | b |
| 300 | c |
| 400 | d |
| 500 | e |
On this page
Languages
Python100.0%
Contributors
Latest Release
v1March 13, 2020Created February 7, 2020
Updated July 12, 2020