An entire leap cycle of 400 years has 146097 days, which is 0 mod 7. During the 400 years, there is a slight bias toward some particular day of the week for each day.
365 mod 7 == 1 which means that if we have consecutive years of 365 days each, each date in them would “advance” by one weekday. Suppose that year n and year n + 1 are both 365-day years; if January 8 falls on a Sunday in year n, it will fall on a Monday in year n + 1.
But a leap year causes each date to “advance” by two weekdays (366 mod 7 == 2). Or, more relevantly to this issue, a leap year causes each date to skip one weekday. There are 97 leap years in a 400-year leap cycle, so each date must do 97 such skips in each leap cycle. Since 97 mod 7 == 6, it’s not possible for these skips to be distributed evenly among all seven weekdays. Thus, it must be the case that the same date does not fall on each weekday an equal number of times per leap cycle.
Same pattern (number of month/day/weekdays == 65) occurs for Sun 1 Jan. Thereafter, Mon 2 Jan is the most frequent, then Tue 3 Jan etc up until Sun 8 Jan.
After that the pattern repeats starting from Tue 1 Mar until Sat 31 Dec. Why there are no combinations that have 65 occurences between 9 Jan and 29 Feb[1] is unknown to me.
If you want to just tinker manually with dates and see the frequency numbers for which weekdays they fall on, here’s a Python script. To calculate for January 8, run python weekday_frequency.py 1 8. Sub in other month/day arguments as you like.
An entire leap cycle of 400 years has 146097 days, which is 0 mod 7. During the 400 years, there is a slight bias toward some particular day of the week for each day.
365 mod 7 == 1
which means that if we have consecutive years of 365 days each, each date in them would “advance” by one weekday. Suppose that yearn
and yearn + 1
are both 365-day years; if January 8 falls on a Sunday in yearn
, it will fall on a Monday in yearn + 1
.But a leap year causes each date to “advance” by two weekdays (
366 mod 7 == 2
). Or, more relevantly to this issue, a leap year causes each date to skip one weekday. There are 97 leap years in a 400-year leap cycle, so each date must do 97 such skips in each leap cycle. Since97 mod 7 == 6
, it’s not possible for these skips to be distributed evenly among all seven weekdays. Thus, it must be the case that the same date does not fall on each weekday an equal number of times per leap cycle.Same pattern (number of month/day/weekdays == 65) occurs for Sun 1 Jan. Thereafter, Mon 2 Jan is the most frequent, then Tue 3 Jan etc up until Sun 8 Jan.
After that the pattern repeats starting from Tue 1 Mar until Sat 31 Dec. Why there are no combinations that have 65 occurences between 9 Jan and 29 Feb[1] is unknown to me.
Simple Perl script: https://gist.github.com/gustafe/bfeaa83277e3f0355b6790fd70ca087f
[1] 29 Feb is obviously an outlier.
I suppose the title should be “has happened.” I’m very stale on stats, but maybe if you ran it out to, say, 3000 it might be different.
It is, but Sunday is still the top spot, and Monday is still the bottom spot.
If you want to just tinker manually with dates and see the frequency numbers for which weekdays they fall on, here’s a Python script. To calculate for January 8, run
python weekday_frequency.py 1 8
. Sub in other month/day arguments as you like.What’s the probability this standard deviation occurs?
100%. Dates are not left to chance.
Weekdays may be stable through the millennia, but calendars come and go. It’s 27 Dec 2022 according to the Julian calendar today.