我试图使用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)