Вы можете знать Функция NP.cumsum () от Numpy Library который рассчитывает кумулятивная сумма данного Numpy Array.
Как мы можем реализовать эту функцию в Python? Изучение этого не только покажет вам, как работает функция Numpy Cumsum, но она также сделает вас лучшим кодировщиком, потому что он содержит много важных концепций в области информатики (например, рекурсия ).
Вот функция Numpy Cumsum в коде Python (без использования Numpy Library):
def cumsum(l:list):
if not l:
return []
sums = []
sums.append(l[0])
return helper(sums, l[1:])
def helper(sums:list, xs:list):
if not xs:
return sums
s = sums[len(sums) - 1]
sums.append(s + xs[0])
if len(xs) > 1:
return helper(sums, xs[1:])
return sums
xs = [1]
print(cumsum(xs))
#[1]
xs = [1, 3, 3, 2, 5]
print(cumsum(xs))
# [1, 4, 7, 9, 14]
xs = [1, 1, 1, 2]
print(cumsum(xs))
# [1, 2, 3, 5]
Функции в этом фрагменте кода вычисляют список сумм из значений списка ввода. В списке выходов по индексу J Есть сумма суммы [J-1] + вход [J] Отказ
Это делается в рекурсивом пути. Функция CumSum запускает рекурсию, выкладывая первый элемент списка ввода в первом положении списка выходных данных, а затем запускает рекурсию с помощью функции HELPER, передавая суммы списков и XS [1:] Отказ Обратите внимание, что в каждом рекурсии шаги XS Список короче, потому что мы снимаем первый элемент каждый раз.
С данным входом [1, 1, 1, 2] Мы вычисляем вывод [1, 1 + 1, 1 + 1 + 1, 1 + 1 + 1 + 2] = [1, 2, 3, 5] Отказ
Куда пойти отсюда
Хотите погрузиться глубже в Ins и ауты Numpy Library? Если у вас есть амбиции в науке о данных или машинном обучении, вы должны. Numpy – самая важная библиотека для изучения в области Python ML и науки Data!
Прочитайте мою книгу «Coffe Break Numpy», чтобы испытать удовольствие от овладения Numpy на основе популярной техники обучения на основе головоломки. Все остальное в науке данных будет намного проще после того, как вы освоили Numpy!
Работая в качестве исследователя в распределенных системах, доктор Кристиан Майер нашел свою любовь к учению студентов компьютерных наук.
Чтобы помочь студентам достичь более высоких уровней успеха Python, он основал сайт программирования образования Finxter.com Отказ Он автор популярной книги программирования Python One-listers (Nostarch 2020), Coauthor of Кофе-брейк Python Серия самооставленных книг, энтузиаста компьютерных наук, Фрилансера и владелец одного из лучших 10 крупнейших Питон блоги по всему миру.
Его страсти пишут, чтение и кодирование. Но его величайшая страсть состоит в том, чтобы служить стремлению кодер через Finxter и помогать им повысить свои навыки. Вы можете присоединиться к его бесплатной академии электронной почты здесь.