#python #pandas #data-structures
#python #pandas #структуры данных
Вопрос:
Я создаю систему рекомендаций, для которой я создаю таблицу непредвиденных обстоятельств, чтобы понять связь между продуктами.
Моя таблица непредвиденных обстоятельств выглядит так, как показано ниже, скажем, Tble-1 :
a b c d
a 2 1 1 1
b 1 2 2 0
c 1 2 2 0
d 1 0 0 1
Это фрейм данных pandas.
Поскольку я работаю с потоковыми данными, мне нужно обновлять эту таблицу непредвиденных обстоятельств всякий раз, когда я получаю новые данные.
Предположим, я получаю новую таблицу непредвиденных обстоятельств, скажем, Table-2:
a b c e
a 2 1 1 4
b 1 1 2 0
c 1 2 4 2
e 1 3 0 4
Мне нужно добавить две таблицы непредвиденных обстоятельств, т. е. Table-1 Table-2, в результате чего получится новая таблица следующего вида:
a b c d e
a 4 2 2 1 4
b 2 3 4 0 0
c 2 4 6 1 4
d 1 0 0 1 0
e 1 3 0 0 4
Как я могу добиться этого в python pandas?
Комментарии:
1. Я не уверен, в чем заключается ваш вопрос. Вы хотите знать, как вы можете редактировать фрейм данных?
2. какое значение вы обновляете?
3. Вопрос отредактирован @Wen-Ben
4. Добавлена дополнительная информация в вопросе @NoSplitSherlock
Ответ №1:
Используйте DataFrame.add
с параметром fill_value=0
для несовпадающих значений, затем замените несуществующие значения и преобразуйте в целое число, если необходимо:
df = df1.add(df2, fill_value=0).fillna(0).astype(int)
print (df)
a b c d e
a 4 2 2 1 4
b 2 3 4 0 0
c 2 4 6 0 2
d 1 0 0 1 0
e 1 3 0 0 4