Spec-Zone.ru › NumPy 1.10

numpy.ipmt

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

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

Параметры:

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

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

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

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

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

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

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

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

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

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

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

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

Возвращает:

out : массив NumPy

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

См. также

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–2016 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.10.1/reference/generated/numpy.ipmt.html

Spec-Zone.ru

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