Метод cumsum() вычисляет накопительную сумму:
1: 1.0 (просто первое число)
2: 3.0 (1 + 2)
3: 6.0 (1 + 2 + 3)
4: NaN
5: 10.0 (1 + 2 + 3 + 4)
6: 15.0 (1 + 2 + 3 + 4 + 5)
Когда встречается np.nan (Not a Number), pandas пропускает его при подсчёте. Все числа преобразуются в тип float64, потому что np.nan является числом с плавающей точкой
Если бы мы хотели, чтобы np.nan не прерывал подсчёт, мы могли бы использовать параметр skipna=False:
print(numbers.cumsum(skipna=False))
Тогда результат был бы другим, и все значения после np.nan тоже стали бы NaN.
>>Click here to continue<<