1

http://docs.scipy.org/doc/numpy-1.10.0/reference/generated/numpy.irr.html

上記のリンクは、支払い期間と複合期間が年単位の場合にのみ機能します。月や四半期の場合、私はそれを使用する方法がわかりません。

IRR、現在価値、将来価値などの知識があれば、私が言っていることを理解できるでしょう。

IRR(Year) の答えは 298.88% で、12.22% を得ています。

列Aの時間は年です

EXCEL FILE IMAGE: エクセルファイルイメージ

import xlrd
import numpy

fileWorkspace = 'C://Users/jod/Desktop/'

wb1 = xlrd.open_workbook(fileWorkspace + 'Project3.xls')
sh1 = wb1.sheet_by_index(0)

time,amount,category = [],[],[]
for a in range(2,sh1.nrows):
    time.append(int(sh1.cell(a,0).value))
    amount.append(float(sh1.cell(a,1).value))
    category.append(str(sh1.cell(a,2).value))
#print(time)
#print(amount)
#print(category)
print('\n')

p_p2 = str(sh1.cell(0,1))
p_p1 = p_p2.replace("text:'","")
pp = p_p1.replace("'","")
#print(pp)
c_p2 = str(sh1.cell(1,1))
c_p1 = c_p2.replace("text:'","")
cp = c_p1.replace("'","")
#print(cp)

netflow = 0
outflow = 0
inflow = 0
flow = 0
if pp == "Months" and cp == "Months":

    IRR = numpy.irr(amount) * 100
    print ("IRR:", round(IRR, 2), '%', '\n')

    for i in time: 
        flow = amount[i] / numpy.power((1 + (IRR/100)), time[i])
        if flow>0:                      
            inflow = inflow + flow      
        if flow<0:                      
            outflow = outflow + flow   

        #print ('Present Value (P) is:', round(flow,0), '\n')

    netflow = outflow + inflow
    print("In 2016")
    print("-------")
    print ('Outflow is: ', round(outflow,0))
    print ('Inflow is: ', round(inflow,0))
    print ('Netflow is: ', round(netflow,0), '\n')

    outflow2 = (round(outflow,0))*(1+(IRR/100))**(9)
    inflow2 = (round(inflow,0))*(1+(IRR/100))**(9)
    netflow2 = outflow2 + inflow2

    print("In 2025")
    print("-------")
    print ('Outflow is: ', round(outflow2,0))
    print ('Inflow is: ', round(inflow2,0))
    print ('Netflow is: ', round(netflow2,0), '\n')
4

2 に答える 2