I have two CSV files. The file1 has a header with only one record and file2 has a header and multiple records.
file1:
dept_id dept_role dept_name dept_date dept_ service
10 man develop 10/5/2019 13:24 user
file2:
id name starttime end time user manufacturing
5487 abc 10/5/2019 14:24 10/5/2019 17:24 loc king
5896 egdt 10/5/2019 14:24 10/5/2019 17:24 rgf king
6305 abc 10/5/2019 14:24 10/5/2019 17:24 srf king
6714 egdt 10/5/2019 14:24 10/5/2019 17:24 sd king
7123 abc 10/5/2019 14:24 10/5/2019 17:24 loc king
7532 egdt 10/5/2019 14:24 10/5/2019 17:24 rgf king
7941 abc 10/5/2019 14:24 10/5/2019 17:24 srf king
expected output like below:
dept_id dept_role dept_name dept_date dept_ service id name starttime end time user manufacturing
10 man develop 10/5/2019 13:24 user 5487 abc 10/5/2019 14:24 10/5/2019 17:24 loc king
10 man develop 10/5/2019 13:24 user 5896 egdt 10/5/2019 14:24 10/5/2019 17:24 rgf king
10 man develop 10/5/2019 13:24 user 6305 abc 10/5/2019 14:24 10/5/2019 17:24 srf king
10 man develop 10/5/2019 13:24 user 6714 egdt 10/5/2019 14:24 10/5/2019 17:24 sd king
10 man develop 10/5/2019 13:24 user 7123 abc 10/5/2019 14:24 10/5/2019 17:24 loc king
10 man develop 10/5/2019 13:24 user 7532 egdt 10/5/2019 14:24 10/5/2019 17:24 rgf king
10 man develop 10/5/2019 13:24 user 7941 abc 10/5/2019 14:24 10/5/2019 17:24 srf king
When i run the code below my columns are populated incorrectly - the last columns from files 1 and 2 are merged.
here i have addedd my script:
import os, sys, csv from itertools
import product
def main():
with open('file1.csv', 'r') as f1, open('file2.csv', 'r') as f2:
reader1 = csv.reader(f1, dialect=csv.excel_tab)
reader2 = csv.reader(f2, dialect=csv.excel_tab)
header1, header2 = next(reader1),next(reader2)
with open('filen.csv', 'w',newline='\n') as out:
writer = csv.writer(out, dialect=csv.excel_tab)
writer.writerow(header1+ header2)
writer.writerows(row1 + row2
for row1, row2 in product(reader1,reader2))
main()
print('file merge completed')
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.