Skip to content Skip to sidebar Skip to footer

Python Writing Program To Iterate A Csv File To Match Field And Save The Result In A Different Data File

I am trying to write a program to do the following : specify a field from a record in a csv file called data. specify a field from a record in a csv file called log. compare the p

Solution 1:

Joining two files by columns (rowcount and a Specific Column[not defined]), and returning the results limited to the columns of the left/first file.

import petl

log = petl.fromcsv('log.txt').addrownumbers()  # Load csv/txt file into PETL table, and add row numbers 
log_columns = len(petl.header(log))  # Get the amount of columns in the log file
data = petl.fromcsv('data.txt').addrownumbers()  # Load csv/txt file into PETL table, and add row numbers 
joined_files = petl.join(log, data, key=['row', 'SpecificField'])  # Join the tables using row and a specific field
joined_files = petl.cut(joined_files, *range(1, log_columns))  # Remove the extra columns obtained from right table
petl.tocsv(joined_files, 'resultfile.csv')  # Output results to csv file

log.txt

enter image description here

data.txt

enter image description here

resultfile.csv

enter image description here

Also Do not forget to pip install (version used for this example):

pip install petl==1.0.11

Post a Comment for "Python Writing Program To Iterate A Csv File To Match Field And Save The Result In A Different Data File"