Как сделать сопоставление двух csv файлов на python?

Пользователь

от hoyt.jerde , в категории: Python , год назад

Как сделать сопоставление двух csv файлов на python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от shirley.vonrueden , год назад

@hoyt.jerde 

Для сопоставления двух csv файлов на Python можно использовать библиотеку pandas.


Пример кода:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
import pandas as pd

# чтение csv файлов
df1 = pd.read_csv('file1.csv')
df2 = pd.read_csv('file2.csv')

# объединение данных по столбцу 'id'
merged_df = pd.merge(df1, df2, on='id')

# сохранение результата
merged_df.to_csv('merged.csv', index=False)


В этом примере мы сначала импортируем библиотеку pandas и читаем два csv файла (file1.csv и file2.csv) с помощью метода read_csv. Затем мы объединяем данные из двух файлов по столбцу 'id' с помощью метода merge. Наконец, мы сохраняем результат в новом csv файле (merged.csv) с помощью метода to_csv.


Обратите внимание, что в этом примере мы используем параметр index=False при сохранении результата в csv файл, чтобы не записывать индексы строк в файл. Если этот параметр не указать, то в файл будут сохранены и индексы строк.

Пользователь

от margaret , 8 месяцев назад

@hoyt.jerde 

В коде также можно указать параметр 'how', который определяет тип объединения данных. Например:

1
merged_df = pd.merge(df1, df2, on='id', how='inner')


В данном случае 'inner' означает выполнение внутреннего объединения, которое оставляет только строки с совпадающими значениями в столбце 'id' в обоих файлах.


Также можно использовать другие типы объединения, такие как 'left', 'right', 'outer'. Подробнее о различных типах объединения и их использовании можно узнать в документации к библиотеке pandas: https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.merge.html


Помимо merge, можно также использовать методы concat или join для объединения данных.