Моделирование платежей по кредитам - рассчитать IRR
Работа с кредитными данными. У меня есть датафрейм со столбцами:
df_irr = df1[['id', 'funded_amnt_t', 'Expect_NoPayments','installment']]
ID займа | Финансируемая сумма | Ожидаемое количество платежей | фиксированный взнос аннуитета.
Я оценил количество платежей с помощью регрессионного анализа. кредиты имеют срок погашения 36 или 60 месяцев.
Сейчас я пытаюсь рассчитать ожидаемый IRR (внутренняя норма доходности).
Но я застрял
Я планировал использовать numpy.irr
Тем не менее, у меня никогда не было возможности использовать это - как моя дата не в правильном формате?
Я попробовал pandas pivot и изменил функции. Неудачно.
Временные ряды денежных потоков: - столбцы: месяцы 0, ...., 60 - строки: идентификатор для каждого займа - значения в месяце 0 = - funded_amount - значения в месяце 0-60: рассрочка, если ожидается_number_of_payments > месяца
Мой старый код Stata был:
keep id installment funded_amnt expectednumberofpayments
sort id
expand 61, generate(expand)
bysort id : gen month = _n
gen cf = 0
replace cf = installment if (expectednumberofpayments+1)>=month
replace cf = funded_amnt*-1 if month==1
1 ответ
numpy.irr
неправильная формула для использования. Эта формула предназначена для нерегулярных платежей (например, 100 долларов США в месяц 1, 0 долларов США в месяц 2 и 400 долларов США в месяц 3). Вместо этого вы хотите использовать numpy.rate
, Я делаю некоторые предположения о ваших данных для этого решения:
import numpy as np
df_irr['rate'] = np.rate(nper=df_irr['Expect_NoPayments'],
pmt=df_irr['installment'],
pv=df_irr['funded_amnt_t'])
Более подробную информацию можно найти здесь, numy документация.