I think the primary problems with it are:

   - A poor definition of “vertical” in the world of stacked matrices - in
   np.linalg land, this means axis=-2, but in vstack land, it means axis=0.
   - Mostly undocumented auto-2d behavior that doesn’t make you think well
   enough about dimensions. Numpy deliberately distinguishes between “row
   vectors” (1, N) and vectors (N,), so it’s a shame when APIs like vstack
   and np.matrix try to hide this distinction.

Eric

On Thu, 9 Nov 2017 at 13:59 Mark Bakker <mark...@gmail.com> wrote:

On 11/09/2017 04:30 AM, Joe wrote:
>> > Hello,
>> >
>> > I have a question and hope that you can help me.
>> >
>> > The doc for vstack mentions that "this function continues to be
>> > supported for backward compatibility, but you should prefer
>> > np.concatenate or np.stack."
>> >
>> > Using vstack was convenient because "the arrays must have the same shape
>> > along all but the first axis."
>> >
>> > So it was possible to stack an array (3,) and (2, 3) to a (3, 3) array
>> > without using e.g. atleast_2d on the (3,) array.
>> >
>> > Is there a possibility to mimic that behavior with np.concatenate or
>> > np.stack?
>> >
>>
> > Joe
>>
>>
> Can anybody explain why vstack is going the way of the dodo?
> Why are stack / concatenate better? What is 'bad' about vstack?
>
> Thanks,
>
> Mark
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion@python.org
> https://mail.python.org/mailman/listinfo/numpy-discussion
>
​
_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@python.org
https://mail.python.org/mailman/listinfo/numpy-discussion

Reply via email to