上一个主题

numpy.mirr

下一个主题

numpy.rate

numpy.nper

numpy.nper(rate, pmt, pv, fv=0, when='end')[源代码]

计算定期付款的数目。

decimal.Decimal 不支持类型。

参数:
rate : array_like

利率(每期)

pmt : array_like

付款

pv : array_like

现值

fv : 阵列式,可选

未来价值

when : '开始',1,'结束',0,字符串,int,可选

付款到期时(“开始”(1)或“结束”(0))

笔记

期间数 nper 通过解方程计算:

fv + pv*(1+rate)**nper + pmt*(1+rate*when)/rate*((1+rate)**nper-1) = 0

但是如果 rate = 0 然后:

fv + pv + pmt*nper = 0

实例

如果你每月只需支付150美元的贷款,那么以7%的年利率偿还8000美元的贷款需要多长时间?

>>> print(round(np.nper(0.07/12, -150, 8000), 5))
64.07335

因此,需要超过64个月的时间来偿还贷款。

同样的分析可以通过几个不同的利率和/或付款和/或总金额来生成一个完整的表。

>>> np.nper(*(np.ogrid[0.07/12: 0.08/12: 0.01/12,
...                    -150   : -99     : 50    ,
...                    8000   : 9001    : 1000]))
array([[[  64.07334877,   74.06368256],
        [ 108.07548412,  127.99022654]],
       [[  66.12443902,   76.87897353],
        [ 114.70165583,  137.90124779]]])