#python #pandas #numpy
#питон #панды #тупица
Вопрос:
Моя проблема следующая:
У меня есть фрейм данных A, который выглядит так:
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
и фрейм данных B, который выглядит следующим образом:
2 2 2 2 2 2 2 2 2
и я пытаюсь добавить B к A, поэтому результат должен выглядеть так:
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 3 3 1 1 1 1 1 1 1 3 3 3 1 1 1 1 1 1 1 3 3 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1
В данный момент я расширяю фрейм данных B нулями, чтобы он был равен по размеру фрейму данных A ….. и просто суммирую эти два фрейма данных.
Есть ли более элегантный способ сделать это? Также как я могу добавить фрейм данных B в разные части фрейма данных A…. и, например, будет такой результат:
3 3 3 1 1 1 1 1 1 1 3 3 3 1 1 1 1 1 1 1 3 3 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Дайте мне знать, если мой вопрос не ясен 🙂
Спасибо.
Комментарии:
1. обновите с
dfA.iloc[start_row:end_row, start_col:end_col] = dfB.to_numpy()
помощью ?2. Отлично, это работает 🙂 Спасибо.
Ответ №1:
для первого :
A.iloc[2:4, 2:4] = A.iloc[2:4, 2:4] B.to_numpy()
и для второго :
A.iloc[0:2, 0:2] = A.iloc[2:4, 2:4] B.to_numpy()