Как получить связанное значение между двумя фреймами данных

#python #sql #pandas #dataframe

#python #sql #панды #фрейм данных

Вопрос:

Если у меня есть два фрейма данных. Фрейм данных A имеет столбец a_id, фрейм данных B имеет столбец b_id и столбец b_value. Как я могу объединить A и B в a_id = b_id и получить C с id и max(b_value)? введите описание изображения здесь

Комментарии:

1. Взгляните на функции join / merge и combine

Ответ №1:

вы можете использовать функцию concat в pandas для добавления столбцов или строк из одного фрейма данных в другой. вот пример:

 # Read in first 10 lines of surveys table
survey_sub = surveys_df.head(10)
# Grab the last 10 rows
survey_sub_last10 = surveys_df.tail(10)
# Reset the index values to the second dataframe appends properly
survey_sub_last10 = survey_sub_last10.reset_index(drop=True)
# drop=True option avoids adding new index column with old index values
 

Когда я объединяю фреймы данных, мне нужно указать ось. axis=0 сообщает pandas о том, что второй фрейм данных укладывается ПОД первым. Он автоматически определит, совпадают ли имена столбцов, и будет складываться соответствующим образом. axis = 1 будет складывать столбцы во втором фрейме данных справа от первого фрейма данных. Чтобы сложить данные по вертикали, мне нужно убедиться, что у нас одинаковые столбцы и соответствующий формат столбцов в обоих наборах данных. Когда я складываю горизонтально, я хочу убедиться, что то, что я делаю, имеет смысл (т. Е. Данные каким-то образом связаны).