आर

2014-09-28 4 views
6

में वास्तविक/365 सम्मेलन का उपयोग करके वर्ष के अंश क्या कोई समारोह/पैकेज है जो अलग-अलग दिन-गणना सम्मेलन के साथ वर्ष अंश (दो तिथियों के बीच अंतर) की गणना कर सकता है, जैसे सालफ्रैक() मैटलैब में? मुझे वास्तविक/365 सम्मेलन का उपयोग करने की आवश्यकता है।आर

+5

'Rquantlib',' Actual365' .... – agstudy

उत्तर

4
rollYourOwn <- function(D, origin=as.Date("1970-01-01")) { 
    if (!inherits(D, "Date")) 
    D <- as.Date(D, origin=origin) 
    as.numeric(D - as.Date(format(D, "%Y-01-01"), origin=origin) + 1)/365 
} 

rollYourOwn("2014-01-01") 
# [1] 0.00273973 

rollYourOwn(Sys.Date()) 
# [1] 0.742466 

rollYourOwn("2014-12-31") 
# [1] 1 
+0

बस सुनिश्चित करें कि समय सही स्वरूप में –

+3

लीप वर्ष के लिए वांछित व्यवहार क्या है बनाने के लिए कई दिन काउंटर 'Actual360' है? उदाहरण के लिए, 'rollYourOwn ("2012-12-31") 'एक से अधिक है। क्या वह सही है? –

+1

@RichieCotton यह बाजार पर निर्भर करता है। यह वास्तविक/365 फिक्स्ड का कार्यान्वयन है। वास्तविक/365 लीप साल अलग-अलग इलाज करेंगे। http: //support.treasuryview.com/kb/treasury/day-count-convention ... संपादित करें: शायद वहां एक और अधिक विश्वसनीय स्रोत है, मैंने बस पहली बार Google में देखा – GSee