auto.arima defaults seem to conflict

noetsi

Fortran must die
#1
from the auto.arima documentation.

m : int, optional (default=1)
The period for seasonal differencing, m refers to the number of periods in each season. For example, m is 4 for quarterly data, 12 for monthly data, or 1 for annual (non-seasonal) data. Default is 1. Note that if m == 1 (i.e., is non-seasonal), seasonal will be set to False. For more information on setting this parameter, see Setting m.​
seasonal : bool, optional (default=True)
Whether to fit a seasonal ARIMA. Default is True. Note that if seasonal is True and m== 1, seasonal will be set to False.​

It says the m default is set to 1 which means no seasonality. But the seasonal default is set to true which means seasonality [and that makes sense given what this does which is to search for SARIMA not just ARIMA].

I don't see how both of these defaults are possible at the same time.
 

hlsmith

Less is more. Stay pure. Stay poor.
#2
Well they both say optional, so is it that both are not trying to actuate each time, thus they don't conflict?
 

Dason

Ambassador to the humans
#3
Note that if seasonal is True and m== 1, seasonal will be set to False.
Seems pretty direct to me. If you don't specify anything directly then season will default to true and m will default to 1 so seasonal will actually be false. So if you don't touch anything m will be 1 and seasonal will be false.
 

noetsi

Fortran must die
#4
Dason I very much don't want seasonal to be false since our data is massively seasonal. So if I have to change the m default to make sure seasonal is true I will. If I understand what you are saying even if the default for seasonal is true it will be set to false if m=1. So one default takes precedence over another?
 

Dason

Ambassador to the humans
#5
I mean yes that's what happens. But if you don't understand why I suggest you reread the documentation for the parameters. It literally doesn't make sense to say there is seasonal differencing if m==1.
 

noetsi

Fortran must die
#6
I understand that actually from the documentation. Why do they set m=1 and seasonal=true (which means there is seasonality) both to defaults since they obviously conflict with each other. I would think you would not want defaults to conflict particularly if one sets the other aside.

But I am used to documentation which is far too much so sparse is a good thing sometimes :) Probably experts at R are aware that defaults can conflict - something else to get used to.