сумма значений в разных строках и столбцах DataFrame Python - PullRequest
0 голосов
/ 10 декабря 2018

Мой фрейм данных

A B C D  
2 3 4 5  
1 4 5 6  
5 6 7 8  

Как добавить значения разных строк и разных столбцов

  • Столбец A Строка 2 со столбцом B, строка 1
  • Столбец A Строка 3 со столбцом B, строка 2

Аналогично для всех строк

1 Ответ

0 голосов
/ 10 декабря 2018

Если вам нужно сделать это только с двумя столбцами (и я хорошо понимаю ваш вопрос), я думаю, вы можете использовать функцию shift .

Ваш фрейм данных (панды?)что-то вроде:

d = {'A': [2, 1, 5], 'B': [3, 4, 6], 'C': [4, 5, 7], 'D':[5, 6, 8]}
df = pd.DataFrame(data=d)

Итак, можно создать новый фрейм данных со смещением столбца B:

df2 = df['B'].shift(1)

, что дает:

0    NaN
1    3.0
2    4.0
Name: B, dtype: float64

, а затем, объедините эти новые данные с предыдущим df и, например, суммируйте значения:

df = df.join(df2, rsuffix='shift')
df['out'] = df['A'] + df['Bshift']

Окончательный результат в столбце out:

    A   B   C   D   Bshift  out
0   2   3   4   5   NaN     NaN
1   1   4   5   6   3.0     4.0
2   5   6   7   8   4.0     9.0

Но это толькоинтуиция, я не уверен в твоем вопросе!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...