Как из 2 csv файлов с общим id сделать одну таблицу с данными на Python?
Есть 2 файла client.csv(15гб 160 млн строк) и phone.csv
Пример файла client.csv:
| id | name | contract_number | address_id | |
|---|---|---|---|---|
| 123 | Пупкин Вася | [email protected] | 43784578 | 5283512 |
Пример файла phone.csv:
| id | phone |
|---|---|
| 123 | 79999999999 |
В итоге надо получить:
| id | phone | name | |
|---|---|---|---|
| 123 | 79999999999 | Пупкин Вася | [email protected] |
Записать надо только нужные данные, либо в csv либо в таблицу SQLite
В теории надо: читать ту которую с номерами и по id смотреть данные из другого файла, но как это сделать не совсем понятно
Ответы (1 шт):
Автор решения: Step1709
→ Ссылка
Можно сделать с помощью библиотеки pandas (не забудьте import pandas as pd):
df_1 = pd.DataFrame({'id':[123], 'name': ['Вася Пупкин'], 'email': ['[email protected]'], 'usless_info': [1]})
df_2 = pd.DataFrame({'id':[123], 'phone': [79999999999], 'usless_info': [1]})
df = pd.merge(left=df_2[['id', 'phone']], right=df_1[['id', 'name', 'email']], how='left', on='id')
df.to_csv('final.csv', index=False)
В результате обЪединенный .csv будет сохранен как final.csv.