вычисление дельта t между последовательными значениями столбца datetime в Python [duplicate]

Для чистого C ++

Вы не можете. C ++ даже не имеет концепции консоли.

Программа может печатать на принтере, выводить прямо в файл или перенаправляться на вход другой программы для всего, что ей нужно.

См. Эту запись в FAQ comp.lang.c ++:

OS-Specific

Если все еще имеет смысл очистить консоль в вашей программе, и вас интересуют решения, зависящие от операционной системы, они существуют.

Для Windows (как в вашем теге) ознакомьтесь с этой ссылкой:

Изменить: этот ответ, ранее упомянутый с использованием системы ("cls" ); , потому что Microsoft сказала, чтобы сделать это. Однако в комментариях было указано, что это небезопасно делать . Из-за этой проблемы я удалил ссылку на статью Microsoft.

Библиотеки (несколько портативные)

ncurses - это библиотека, которая поддерживает консольные манипуляции:

36
задан AMM 17 April 2014 в 21:36
поделиться

2 ответа

Используйте shift .

df['dA'] = df['A'] - df['A'].shift(-1)
70
ответ дан exp1orer 16 August 2018 в 04:40
поделиться
  • 1
    что, если «A» содержит элементы списка? – LeoCella 3 December 2016 в 07:36
  • 2
    Он работает до тех пор, пока эта операция имеет смысл для любых значений в вашем фреймворке! Например, если каждая "ячейка" в вашем DataFrame есть список, вы можете сделать df['A'] + df['A'].shift(), но вы не можете вычесть, поскольку вычитание не определено для списков. – exp1orer 6 December 2016 в 15:17
  • 3
    Что вы можете сделать в «NaN» в первой / последней строке? – André Fernandes 19 January 2017 в 21:40
  • 4
    @ AndréFernandes, что бы вы хотели быть там? Вы всегда можете сделать fillna впоследствии, но если вы переходите вниз, что будет разумным значением для первой строки? – exp1orer 20 January 2017 в 21:18
  • 5
    Например, почасовые различия кумулятивного счетчика. Первая строка должна быть заполнена чем-то, либо 0, либо значением из другого поля строки. – André Fernandes 21 January 2017 в 00:07

Вы можете использовать diff и передать -1 в качестве аргумента periods:

>>> df = pd.DataFrame({"A": [9, 4, 2, 1], "B": [12, 7, 5, 4]})
>>> df["dA"] = df["A"].diff(-1)
>>> df
   A   B  dA
0  9  12   5
1  4   7   2
2  2   5   1
3  1   4 NaN

[4 rows x 3 columns]
31
ответ дан DSM 16 August 2018 в 04:40
поделиться
  • 1
    как я могу управлять той же проблемой, когда «A» имеет элементы списка, а не вместо скалярного? – LeoCella 3 December 2016 в 07:37
Другие вопросы по тегам:

Похожие вопросы: