On Wed, 18 Apr 2018, Sven Schreiber wrote:
Am 17.04.2018 um 18:00 schrieb Allin Cottrell:
> On Tue, 17 Apr 2018, Sven Schreiber wrote:
>
>> Am 16.04.2018 um 23:11 schrieb Allin Cottrell:
>>> So, just to be explicit, the idea would then be:
>>>
>>> V = lrcovar(X) # does de-meaning
>>> V = lrcovar(X, 1) # does de-meaning (more explicitly)
>>> V = lrcovar(X, 0) # cancels de-meaning
>>>
>>> Is this preferable to what's in place right now? Which is:
>>
>> I think I prefer this way (above; although everything is arbitrary of
>> course). About the meanings of 0 and 1, one reason is your "action"
>> indicator semantics, and the other one is that the (X, 0) combination
>> could be intuitively read out as "these Xes already have mean 0 [thus
>> do not demean again]".
>> About the preferred default (of 1/action) I gave my argument above.
>>
>> If there's consensus, "somebody" please apply the change to git.
>
> I've just done so.
Is this actually working for you? I get an error about "too many
arguments" when I try to specify the demeaning. (I believe this is with
current git (apart from Jack's latest tex changes.)
With current git I can do, for example:
matrix X = ones(100,1) ~ mnormal(100,3)
eval lrcovar(X)
eval lrcovar(X, 1)
eval lrcovar(X, 0)
and I get
? eval lrcovar(X)
0.0000 0.0000 0.0000 0.0000
0.0000 0.97187 0.28083 -0.29070
0.0000 0.28083 1.0251 0.088508
0.0000 -0.29070 0.088508 0.92647
? eval lrcovar(X, 1)
0.0000 0.0000 0.0000 0.0000
0.0000 0.97187 0.28083 -0.29070
0.0000 0.28083 1.0251 0.088508
0.0000 -0.29070 0.088508 0.92647
? eval lrcovar(X, 0)
3.9500 0.33879 -0.28638 -0.075381
0.33879 1.0008 0.25624 -0.29737
-0.28638 0.25624 1.0459 0.093917
-0.075381 -0.29737 0.093917 0.92748
Allin