Spec-Zone.ru › NumPy 1.13

numpy.ipmt

numpy.ipmt(rate, per, nper, pv, fv=0.0, when='end') [source]

Вычисление процентной части платежа.

Параметры:

rate : скаляр или массив_подобный с формой (M, )

Процентная ставка как десятичная (не в процентах) за период

per : скаляр или массив_подобный с формой (M, )

Проценты по кредиту изменяются в течение срока кредита. Этот параметр представляет собой период платежа для расчета суммы процентов.

nper : скаляр или массив_подобный с формой (M, )

Количество периодов начисления процентов

pv : скаляр или массив_подобный с формой (M, )

Настоящая стоимость

fv : скаляр или массив_подобный с формой (M, ), необязательный

Будущая стоимость

when : {{‘begin’, 1}, {‘end’, 0}}, {строка, целое число}, необязательный

Когда платежи приходятся (‘begin’ (1) или ‘end’ (0)). По умолчанию {‘end’, 0}.

Возвращаемое значение:

out : массив

Процентная часть платежа. Если все входные данные — скаляры, возвращает скалярное число с плавающей точкой. Если какой-либо вход — массив_подобный, возвращает процентную часть платежа для каждого элемента входных данных. Если несколько входных данных — массивы_подобные, они все должны иметь одинаковую форму.

См. также

ppmt, pmt, pv

Примечания

Общий платеж состоит из платежа по основному долгу и процентов.

pmt = ppmt + ipmt

Примеры

Какой график погашения для кредита на 1 год в размере 2500 долларов США при процентной ставке 8,24% в год, начисляемой ежемесячно?

>>> principal = 2500.00

Переменная «per» представляет периоды кредита. Помните, что финансовые уравнения начинают счет периодов с 1!

>>> per = np.arange(1*12) + 1
>>> ipmt = np.ipmt(0.0824/12, per, 1*12, principal)
>>> ppmt = np.ppmt(0.0824/12, per, 1*12, principal)

Каждый элемент суммы массивов «ipmt» и «ppmt» должен быть равен «pmt».

>>> pmt = np.pmt(0.0824/12, 1*12, principal)
>>> np.allclose(ipmt + ppmt, pmt)
True
>>> fmt = '{0:2d} {1:8.2f} {2:8.2f} {3:8.2f}'
>>> for payment in per:
...     index = payment - 1
...     principal = principal + ppmt[index]
...     print(fmt.format(payment, ppmt[index], ipmt[index], principal))
 1  -200.58   -17.17  2299.42
 2  -201.96   -15.79  2097.46
 3  -203.35   -14.40  1894.11
 4  -204.74   -13.01  1689.37
 5  -206.15   -11.60  1483.22
 6  -207.56   -10.18  1275.66
 7  -208.99    -8.76  1066.67
 8  -210.42    -7.32   856.25
 9  -211.87    -5.88   644.38
10  -213.32    -4.42   431.05
11  -214.79    -2.96   216.26
12  -216.26    -1.49    -0.00
>>> interestpd = np.sum(ipmt)
>>> np.round(interestpd, 2)
-112.98

© 2008–2017 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.ipmt.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API