Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't understand how timezones work in R (and with POSIXlt and POSIXct), but with the above change, the
tzkeyword will just be ignored when the string includes an offset?That doesn't match fully what base R does:
(but again, I don't really know how to interpret those returned values, and whether they are tz "aware" or "native" or even if those concepts even exist in R. I looked at the
$zoneand$gmtoffattributes of the above return values, but can't make sense of it)There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We don't have a naive datetime type in R...everything is timezone aware, and
tz = ""means "your local timezone" (but everything is UTC internally). What you've encountered here is a fun type called thePOSIXltwhich is sort of like a data frame that stores components in separate vectors (thePOSIXctis a more normal version of it, which is seconds from the unix epoch as a double vector).It's a good point that this doesn't match what base R does...I think we'd want to
cast()ifgrepl("%z")andassume_timezone()otherwise?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't know if this helps with understanding dates/times in R, but the
tzargument won't affect the underlying point in time (just the attribute of the output and, to great confusion of many, how it is printed):Created on 2023-05-24 with reprex v2.0.2
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, that sounds correct