numpy.irr返回错误:ValueError(“输入必须是rank-1数组。”)

时间:2017-01-02 10:26:27

标签: python arrays numpy financial

我试图使用numpy.IRR函数计算每月储蓄计划的IRR。我一直得到一个ValueError(“输入必须是一个排名1阵列。”)。

如何将我的数组“Cashflow”转换为不会产生此错误的数组?我试过“ravel”或“numpy.reshape”,但我一直收到错误。还是有另一个错误?谢谢, R上。

以下是代码:

import numpy as np
i=0
InitialPayment=2500
NumberOfPayments=225
Payment=100
MonthsToMaturity=240
FV=50000
Cashflow=[(0-InitialPayment)]
while i< NumberOfPayments:
    Cashflow.append (0-Payment)
    i +=1
while i< (MonthsToMaturity):
    Cashflow.append (0)
    i  +=1
Cashflow.append (FV)
Cashflow = np.reshape(Cashflow,-1)
print ("Cashflow: ") +str(Cashflow)
IRR = np.irr([Cashflow])
print ("IRR") +str(IRR)

0 个答案:

没有答案