У меня есть два кадра данных, df1 и df2, построенные из одного и того же набора данных относительно некоторой информации о пациенте.
df1 содержит информацию о том, как долго пациенты находились на разных в / в одних и тех же типах, поэтому для одного и того же пациента может быть несколько рядов, где каждый ряд представляет собой разную в / в.
В df2 каждый ряд представляет отдельного пациента, а столбцы показывают общее количество дней, в течение которых пациент находился на определенном типе внутривенного вливания.
Обсуждаемые нами столбцы - «FIN» и «Line Days».«FIN» однозначно идентифицирует пациентов и документы «Строковые дни», сколько дней было в конкретном IV.
В df1 я сгруппировал строки по «FIN», а затем суммировал столбцы «Дни строк» длякаждый отдельный 'FIN.'Теперь я хочу взять вывод этого groupby.agg () и добавить его в качестве нового столбца в df2, сопоставив 'FIN.'
def sum_col(df, col1, col2):
tot_line = df.groupby(col1)[col2].agg('sum')
return tot_line
CVL_totals = sum_col(CVL_data, 'FIN', '# Line days')
Вывод выглядит так: (ПРИМЕЧАНИЕ: Фактические значения FIN не отображаются)
FIN
000000000 12
111111111 3
222222222 32
333333333 7
Теперь я хочу объединить это с df2 в 'FIN', но я не могу этого сделать, поскольку выходные данные не являются кадрами данных.