import pandas as pd
import numpy as np
df = pd.DataFrame({"a": [7, 2, 3], "b": [4, 5, 6], "c": [100, np.nan, np.NaN]})
df
Out[11]:
a b c
0 7 4 100.0
1 2 5 NaN
2 3 6 NaN
Для описанного выше Python DataFrame Python я хотел бы сделать для нуля номер строки: вычислить разницу между столбцами a
и b
.Результат этого должен быть добавлен к содержимому столбца c
и сохранен в (новом) столбце d
.
Для строки номер один, на первом шаге содержимое строки ноль / столбецd
должен храниться в столбце c
.После этого должен применяться тот же алгоритм, что и раньше, для нулевой строки.
После выполнения этого результирующий DataFrame будет выглядеть следующим образом:
a b c d
0 7 4 100.0 103.
1 2 5 103.0 100.
2 3 6 100.0 97.
В действительности в кадре данных гораздо больше строк, чем в этоммаленький пример.Поэтому высокая скорость вычислений очень важна.
Как будет выглядеть решение для вычисления этого нового фрейма данных?