Вы можете знать Функция 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 и помогать им повысить свои навыки. Вы можете присоединиться к его бесплатной академии электронной почты здесь.