On Thu, Apr 7, 2016 at 2:17 PM, Chris Barker <chris.bar...@noaa.gov> wrote:
> On Thu, Apr 7, 2016 at 10:00 AM, Ian Henriksen < > insertinterestingnameh...@gmail.com> wrote: > >> Here's another example that I've seen catch people now and again. >> >> A = np.random.rand(100, 100) >> b = np.random.rand(10) >> A * b.T >> > > typo? that was supposed to be > > b = np.random.rand(100). yes? > > This is exactly what someone else referred to as the expectations of > someone that comes from MATLAB, and doesn't yet "get" that 1D arrays are 1D > arrays. > > All of this is EXACTLY the motivation for the matric class -- which never > took off, and was never complete (it needed a row and column vector > implementation, if you ask me. But Ithikn the reason it didn't take off is > that it really isn't that useful, but is different enough from regular > arrays to be a greater source of confusion. And it was decided that all > people REALLY wanted was an obviou sway to get matric multiply, which we > now have with @. > > So this discussion brings up that we also need an easy an obvious way to > make a column vector -- > > maybe: > > np.col_vector(arr) > > which would be a synonym for np.reshape(arr, (-1,1)) > > would that make anyone happy? > > NOTE: having transposing a 1D array raise an exception would help remove a > lot of the confusion, but it may be too late for that.... > > > In this case the user pretty clearly meant to be broadcasting along the >> rows of A >> rather than along the columns, but the code fails silently. >> > > hence the exception idea.... > > maybe a warning? > AFAIR, there is a lot of code that works correctly with .T being a noop for 1D e.g. covariance matrix/inner product x.T dot y as mentioned before. write unit tests with non square 2d arrays and the exception / test error shows up fast. Josef > > -CHB > > > -- > > Christopher Barker, Ph.D. > Oceanographer > > Emergency Response Division > NOAA/NOS/OR&R (206) 526-6959 voice > 7600 Sand Point Way NE (206) 526-6329 fax > Seattle, WA 98115 (206) 526-6317 main reception > > chris.bar...@noaa.gov > > _______________________________________________ > NumPy-Discussion mailing list > NumPy-Discussion@scipy.org > https://mail.scipy.org/mailman/listinfo/numpy-discussion > >
_______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org https://mail.scipy.org/mailman/listinfo/numpy-discussion