问题
I have a large dataframe with time stamps that look like this:
"2019-05-15T01:42:15.072Z"
It resembles a ISO 8601 combined date and time representation.
How can I parse this string into a real date-time format?
The characters (T and Z) inside the data seems to make it difficult.
回答1:
You can simply parse the timestamp by specifying the format in as.POSIXct (or strptime)
as.POSIXct("2019-05-15T01:42:15.072Z", format = "%Y-%m-%dT%H:%M:%OSZ")
#[1] "2019-05-15 01:42:15 AEST"
Explanation:
%Y, %m and %d denote the year (with century), month and day; %H, %M and %OS denote the hours, minutes and seconds (including milliseconds). The T and Z are simply added to the format string, because
Any character in the format string not part of a conversion specification is interpreted literally
See ?strptime for the different conversion specifications.
来源:https://stackoverflow.com/questions/57355948/parse-iso-8601-combined-date-and-time-yyyy-mm-ddthh-mm-ssz