প্রকৃতপক্ষে, যেমন উপরে বর্ণিত হয়েছে (এবং অন্য কোথাও এসও তে), স্ট্রিংটিকে একটি তারিখে রূপান্তর করতে আপনার মাসের একটি নির্দিষ্ট তারিখের প্রয়োজন। থেকে as.Date()ম্যানুয়াল পৃষ্ঠা:
যদি তারিখের স্ট্রিংটি সম্পূর্ণরূপে তারিখটি নির্দিষ্ট না করে তবে প্রত্যাবর্তিত উত্তরটি সিস্টেম-নির্দিষ্ট হতে পারে। সর্বাধিক সাধারণ আচরণটি অনুমান করা হয় যে অনুপস্থিত বছর, মাস বা দিনটি বর্তমান একটি। যদি এটি একটি তারিখ ভুলভাবে নির্দিষ্ট করে, নির্ভরযোগ্য বাস্তবায়ন একটি ত্রুটি দেয় এবং তারিখটি এনএ হিসাবে রিপোর্ট করা হয়। দুর্ভাগ্যক্রমে কিছু সাধারণ বাস্তবায়ন (যেমন glibc) অবিশ্বস্ত এবং উদ্দেশ্যযুক্ত অর্থ অনুমান করে।
একটি সহজ সমাধান হ'ল "01"প্রতিটি তারিখের তারিখটি পেস্ট করা এবং strptime()সেই মাসের প্রথম দিন হিসাবে এটি নির্দেশ করতে ব্যবহার করা।
আরে প্রসেসিংয়ের তারিখ এবং সময়গুলির বিষয়ে কিছুটা বেশি পটভূমি সন্ধানকারীদের জন্য:
আর এ, সময় ব্যবহার করে POSIXctএবং POSIXltক্লাস এবং তারিখগুলি ক্লাস ব্যবহার করে Date।
তারিখগুলি 1 ই জানুয়ারী, 1970 সাল থেকে দিনের সংখ্যা হিসাবে সংরক্ষণ করা হয় এবং 1 ই জানুয়ারী, 1970 এর পরে সময়গুলি সেকেন্ডের সংখ্যা হিসাবে সঞ্চিত হয়।
সুতরাং, উদাহরণস্বরূপ:
d <- as.Date("1971-01-01")
unclass(d)
pct <- Sys.time()
unclass(pct)
plt <- as.POSIXlt(pct)
up <- unclass(plt)
names(up)
up$hour
তারিখ এবং সময় অপারেশন সম্পাদন:
plt - as.POSIXlt(d)
এবং তারিখগুলি প্রক্রিয়া করার জন্য, আপনি ব্যবহার করতে পারেন strptime()(ম্যানুয়াল পৃষ্ঠা থেকে এই উদাহরণগুলি ধার করে):
strptime("20/2/06 11:16:16.683", "%d/%m/%y %H:%M:%OS")
dates <- c("1jan1960", "2jan1960", "31mar1960", "30jul1960")
strptime(dates, "%d%b%Y")