У меня есть один csv test1.csv (в нем нет заголовков !!!).У меня также есть, как вы можете видеть разделитель с конвейером, но также с ровно одной вкладкой после восьми столбца.
ug|s|b|city|bg|1|94|ON-05-0216 9.72|28|288
ug|s|b|city|bg|1|94|ON-05-0217 9.72|28|288
У меня есть второй файл test2.csv только с разделителем трубы
ON-05-0216|100|50
ON-05-0180|244|152
ON-05-0219|269|146
Так как из восьми столбцов из первого файла и из первого столбца из второго файла сопоставляется только одно значение (ON-05-0216
), это означает, что в выходном файле должно быть только одно значение, но с добавлениемстолбца SUM из второго и третьего столбца из второго файла (100 + 50).
Таким образом, конечный результат будет следующим:
ug|s|b|city|bg|1|94|ON-05-0216 Total=150|9.72|28|288
или
ug|s|b|city|bg|1|94|ON-05-0216|Total=150 9.72|28|288
что бы ни было проще.
Я думаю, что лучший способ использовать это с пандами.Но я застрял с получением нескольких разделителей из первого файла и с тем, как сопоставлять столбцы без имен столбцов, поэтому не уверен, как продолжить дальше.
import pandas as pd
a = pd.read_csv("test1.csv", header=None)
b = pd.read_csv("test2.csv", header=None)
merged = a.merge(b,)
merged.to_csv("output.csv", index=False)
Заранее спасибо