""" In [3]: n.floor(n.linspace(0,5,7), dtype=n.int) --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-3-1471f5d738e8> in <module>() ----> 1 n.floor(n.linspace(0,5,7), dtype=n.int) TypeError: No loop matching the specified signature and casting was found for ufunc floor In [4]: n.__version__ Out[4]: '1.11.0' """ Is this the expected behavior? I am doing:
myints = n.array(n.floor(myarray), dtype=n.int) to get the integers.
tx. R. -- Renato Fabbri GNU/Linux User #479299 labmacambira.sourceforge.net
On 2017-09-25 10:59, Renato Fabbri wrote:
""" In [3]: n.floor(n.linspace(0,5,7), dtype=n.int http://n.int) --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-3-1471f5d738e8> in <module>() ----> 1 n.floor(n.linspace(0,5,7), dtype=n.int http://n.int)
TypeError: No loop matching the specified signature and casting was found for ufunc floor
In [4]: n.__version__ Out[4]: '1.11.0' """
Is this the expected behavior?
Yes. There is no floor function for integers. The dtype argument specified not only the return type, but the type the calculation is done in as well. floor() only exists, and only makes sense, for floats. (You can use floor(a, dtype='f4') and so on to insist on floats of a different width) If you have some floats, and you want to get their floor as integers, you'll have to cast. In that case, in actual fact, there is little reason to use floor at all: In [2]: np.arange(1.9, 11.) Out[2]: array([ 1.9, 2.9, 3.9, 4.9, 5.9, 6.9, 7.9, 8.9, 9.9, 10.9]) In [3]: np.arange(1.9, 11.).astype('i8') Out[3]: array([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
I am doing:
myints = n.array(n.floor(myarray), dtype=n.int http://n.int) to get the integers.
tx. R.
-- Renato Fabbri GNU/Linux User #479299 labmacambira.sourceforge.net http://labmacambira.sourceforge.net
_______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@python.org https://mail.python.org/mailman/listinfo/numpy-discussion
-- Thomas Jollans
I have an array of floats and want their floor values as integers. (e.g. to use them as indexes for a table lookup) It seems reasonable to assume this is a frequent use of floor. Anyway, you gave me a better vay to do it:
myints = n.floor(myarray).astype(n.int)
On Mon, Sep 25, 2017 at 7:23 AM, Thomas Jollans
On 2017-09-25 10:59, Renato Fabbri wrote:
""" In [3]: n.floor(n.linspace(0,5,7), dtype=n.int http://n.int) ------------------------------------------------------------
TypeError Traceback (most recent call last) <ipython-input-3-1471f5d738e8> in <module>() ----> 1 n.floor(n.linspace(0,5,7), dtype=n.int http://n.int)
TypeError: No loop matching the specified signature and casting was found for ufunc floor
In [4]: n.__version__ Out[4]: '1.11.0' """
Is this the expected behavior?
Yes. There is no floor function for integers.
The dtype argument specified not only the return type, but the type the calculation is done in as well. floor() only exists, and only makes sense, for floats. (You can use floor(a, dtype='f4') and so on to insist on floats of a different width)
If you have some floats, and you want to get their floor as integers, you'll have to cast. In that case, in actual fact, there is little reason to use floor at all:
In [2]: np.arange(1.9, 11.) Out[2]: array([ 1.9, 2.9, 3.9, 4.9, 5.9, 6.9, 7.9, 8.9, 9.9, 10.9])
In [3]: np.arange(1.9, 11.).astype('i8') Out[3]: array([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
I am doing:
myints = n.array(n.floor(myarray), dtype=n.int http://n.int) to get the integers.
tx. R.
-- Renato Fabbri GNU/Linux User #479299 labmacambira.sourceforge.net http://labmacambira.sourceforge.net
_______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@python.org https://mail.python.org/mailman/listinfo/numpy-discussion
-- Thomas Jollans _______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@python.org https://mail.python.org/mailman/listinfo/numpy-discussion
-- Renato Fabbri GNU/Linux User #479299 labmacambira.sourceforge.net
participants (2)
-
Renato Fabbri
-
Thomas Jollans