Numpy array element-wise division (1/x)
division, numpy, python
Solution
`1 / array` makes an integer division and returns `array([1, 0, 0, 0])`.
`1. / array` will cast the array to float and do the trick:
>>> array = np.array([1, 2, 3, 4])
>>> 1. / array
array([ 1. , 0.5 , 0.33333333, 0.25 ])
Problem
My question is very simple, suppose that I have an array like ``` array = np.array([1, 2, 3, 4]) ``` and I'd like to get an array like ``` [1, 0.5, 0.3333333, 0.25] ``` However, if you write something like ``` 1/array ``` or ``` np.divide(1.0, array) ``` it won't work. The only way I've found so far is to write something like: ``` print np.divide(np.ones_like(array)*1.0, array) ``` But I'm absolutely certains that there is a better way to do that. Does anyone have any idea?