[Numpy-discussion] deprecate numpy.matrix

Matthew Brett matthew.brett at gmail.com
Mon Feb 10 15:53:52 EST 2014


Hi,

On Mon, Feb 10, 2014 at 12:39 PM,  <josef.pktd at gmail.com> wrote:
>
>
> On Mon, Feb 10, 2014 at 3:04 PM, Matthew Brett <matthew.brett at gmail.com>
> wrote:
>>
>> Hi,
>>
>> On Mon, Feb 10, 2014 at 7:09 AM, Alan G Isaac <alan.isaac at gmail.com>
>> wrote:
>> [snip]
>> > Just to forestall the usual "just start them with arrays, eventually
>> > they'll
>> > be grateful" reply, I would want to hear that suggestion only from
>> > someone
>> > who has used it successfully with undergraduates in the social sciences.
>>
>> I teach psychologists and neuroscientists mainly - you can get an idea
>> of the level I'm teaching at from the notebook I posted earlier in the
>> thread.
>>
>> I can't speak to my success in any objective way, but I didn't hear
>> the students complain about the X.dot(Y).  This may be because
>>
>> a) only some of them have much experience of or liking for matlab
>> b) some of them have the impression that Python is the way to go, and
>> they accept that this will mean some changes
>> c) not much of the code they see is of the form: X * (X.T * X).I * X.T
>> .  In fact, the notebook I posted was the closest to that stuff.  In
>> any  case I personally found it easier show the ideas using sympy.
>
>
> In support of Alan's view:
>
> Linear models in econometrics is all linear algebra, and GAUSS is still
> popular among econometricians because you can write a lot of code just like
> in the paper. (although GAUSS isn't as popular as it was some time ago, but
> matlab is not much different.)
>
> https://github.com/statsmodels/statsmodels/blob/master/statsmodels/sandbox/regression/gmm.py#L1194

Maybe it would be helpful to draw the distinction between

1) Teaching people to do numerical coding
2) Using code to demonstrate mathematical concepts

For 1) - it looks like people writing serious code don't generally use
np.matrix - but maybe we're missing some code-bases.
For 2) - I personally think sympy is better for this.

There might be some middle-ground (1.5) where the idea is to get
people comfortable with writing 10-50 line scripts to do linear
algebra-type things.   I guess these people will be particularly
difficult to persuade that it's a good idea to switch computer
languages.

Cheers,

Matthew



More information about the NumPy-Discussion mailing list