Я хочу рассчитать IRR (используя функцию xirr из пакета tvm) для каждого идентификатора в таблице, где каждый идентификатор имеет различное количество строк.Я считаю, что должен использовать первое вхождение до последнего вхождения-1, но после этого я не уверен, что делать.У кого-нибудь есть предложения?
Ниже приведен пример фрейма данных, для которого я попытался использовать как функцию суммирования в dplyr с функцией xirr, так и написать цикл for.Безуспешно.
exampledf<-data.frame(c(2, 2, 2, 3, 3, 3, 3, 3), c("2017-11-30", "2017-12-31", "2018-01-31", "2017-11-30", "2017-12-31", "2018-01-31", "2018-02-28", "2018-03-31"), c(-65000, 33000, 33000, -40000, 10250, 10250, 10000, 10500))
names(exampledf)<-c("ID","Date","CashFlow")
exampledf %>% group_by(ID) %>% summarise(
IRR = xirr(cf = exampledf$CashFlow, d = exampledf$Date, tau = NULL, comp_freq = 12, interval = c(-1, 10)))
Ожидаемые результаты должны быть примерно такими:
ID IRR
1 2 0.127
2 3 0.125
В настоящее время при запуске функции суммирования возвращается одинаковый IRR для обоих идентификаторов, что не должно иметь место.Моя попытка с циклом for также не удалась, любая помощь здесь будет оценена!