Вычисляет разницу элемента DataFrame по сравнению с другим элементом в столбцах DataFrame. - PullRequest
0 голосов
/ 24 сентября 2019

У меня есть сводная таблица, например,

WEEK    w1  W2 ...  Wn
col_1
A       1    2 ... n
B       1    2 ... n
C       1    2 ... n
...

Интересно, смогу ли я сразу получить разницу Wn & Wn-1?

WEEK    w1  W2 ...  Wn
col_1
A       0    1 ... 1
B       0    1 ... 1
C       0    1 ... 1
...

Я нашел pandas.DataFrame.diff(), но не знаю, как правильно его использовать.Спасибо за любые предложения!

1 Ответ

0 голосов
/ 24 сентября 2019

Функция diff вычисляет разницу между всеми строками и их предыдущей строкой и возвращает фрейм данных с размером, равным применяемому.

При этом ваша первая строка остается равной NaN, поскольку предыдущей строки в первой строке нет. Если вы хотите вычислить разницу между столбцами, просто установите df.diff(axis=1). Это вернет кадр данных с первым столбцом NaN. Если вы хотите найти разницу только между двумя столбцами, примените функцию diff к этим двум столбцам

df[:,-2:].diff(axis=1)

При этом выбираются последние два столбца вашего фрейма данных и возвращается новая таблица с 2 столбцами, один NaN и другой с разницей Wn - Wn-1

...