2013-01-09 16 views
5

मेरे पास एक टेबल है, कॉलम में से एक 20130109 या वर्ष के महीने में कोई स्थान नहीं है।तारीखों को संख्याओं में कनवर्ट करें

मैं इन बिंदुओं को ग्राफ करने की कोशिश कर रहा हूं, और इस विषम दूरी के कारण, ग्राफ में बड़े अंतराल के साथ समाप्त होता है, और इस प्रकार इन संख्याओं को तिथियों में परिवर्तित करना चाहता हूं।

मैं as.Date(as.character(20130107), "%y%m%d") का उपयोग करने का प्रयास कर रहा हूं लेकिन यह हमेशा NA देता है।

+0

दिनांक स्वरूपण के लिए यहां एक अच्छा स्टार्टर संदर्भ है: http://www.statmethods.net/input/dates.html –

उत्तर

17

आप की जरूरत है %Y (4 अंकों वर्ष) नहीं %y (2 अंकों साल):

> as.Date(as.character(20130107), "%Y%m%d") 
[1] "07-01-2013" 
1

lubridate

library(lubridate) 

parse_date_time(as.character(20130107), "%Y%m%d") 

का उपयोग करके आप सिर्फ तारीख के कुछ तत्वों को निकालने के लिए चाहता था, तो यह है strftime के साथ आसान है। उदाहरण के लिए, केवल वर्ष:

strftime(parse_date_time(as.character(20130107), "%Y%m%d"), "%Y") 
संबंधित मुद्दे