#python #pandas #dataframe #merge
#python #pandas #фрейм данных #слияние
Вопрос:
Я пытаюсь получить комбинированный фрейм данных из нескольких фреймов данных. В основном каждый отдельный фрейм данных — это данные за месяц. Таким образом, у каждого есть дата и несколько столбцов с некоторыми другими значениями. Однако длина каждого фрейма данных не всегда одинакова, и некоторые даты в некоторых из них повторяются.
Итак, что я хотел бы сделать, это объединить все мои фреймы данных (в результате чего будут получены данные за год из 12 разных фреймов данных каждого месяца), так что в итоге я получу один фрейм данных без повторяющихся дат. Следует отметить, что столбцы одинаковы в каждом фрейме данных. Просто разные значения.
Можно ли это сделать простым способом или …?
Ответ №1:
Импорт модуля.
import pandas as pd
Пример данных.
df1 = pd.DataFrame({'Date':['2020-6-19', '2020-6-20', '2020-7-20'], 'A':[1,2,3]})
df2 = pd.DataFrame({'Date':['2020-7-20', '2020-7-22'], 'A':[1,2]})
df1['Date'] = pd.to_datetime(df1['Date'])
df2['Date'] = pd.to_datetime(df2['Date'])
Объедините разные фреймы данных и добавьте дубликаты Date
.
pd.concat([df1,df2]).drop_duplicates('Date').reset_index(drop=True)
Комментарии:
1. Отлично, рад, что это помогло.