[Rd] %in% very slow for Date class since R 4.3
Martin Maechler
m@ech|er @end|ng |rom @t@t@m@th@ethz@ch
Fri Jun 27 16:21:36 CEST 2025
>>>>> Enrico Schumann
>>>>> on Fri, 27 Jun 2025 15:42:47 +0200 writes:
> On Thu, 26 Jun 2025, Dirk Eddelbuettel writes:
>> On 25 June 2025 at 07:11, Kurt Hornik wrote:
>> | >>>>> hormutz screed writes:
>> |
>> | Thanks. Makes sense to me, needs some discussion in R Core ...
>>
>> Nice to see this in NEWS [1]:
>>
>> CHANGES IN R-devel BUG FIXES
>>
>> ‘<Date> %in% set’ has become as fast again, as it was before R 4.3.0, via
>> new S3 method ‘mtfrm.Date’.
>>
>> Dirk
>>
>> [1] https://developer.r-project.org/blosxom.cgi/R-devel via the RSS feed
> As a remark -- not a complaint ;-) --, in R 4.5.1:
[ well, I think you "should complain", read on .... ]
Yes, we've realized that almost immediately,
and between the events and excellent talks at "Peter's 60th
birthday" workshop *), I have addressed this problem
and will commit changes (to C code) to solve it now within a few
hours hopefully:
We do want to keep the "equality" of `==` (and hence `!=` )
equivalent to that of match() {and hence `%in%`} for such basic objects,
and indeed, we have always (I think) had
R> "2025-01-01" == as.Date("2025-01-01")
[1] TRUE
Thank you still, Enrico, for raising the issue!
Martin
--
Martin Maechler
ETH Zurich and R Core team
*) https://math.ethz.ch/fim/activities/conferences/High-dimensional-statistics-applications-and-distributional-shifts
> match("2025-01-01", as.Date("2025-01-01"))
> ## [1] 1
> which is, in a way, consistent with
> "2025-01-01" == as.Date("2025-01-01")
> ## [1] TRUE
> In R-devel (2025-06-26 r88362):
> match("2025-01-01", as.Date("2025-01-01"))
> ## [1] NA
> "2025-01-01" == as.Date("2025-01-01")
> ## [1] TRUE
> --
> Enrico Schumann
> Lucerne, Switzerland
> https://enricoschumann.net
More information about the R-devel
mailing list