Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import numpy as np
- indices=np.array([0,1,0,1,1,2,3,3,3,2,0,2])
- data = np.arange(len(indices))
- binned = np.array([data[indices == i] for i in range(4)])
- array([[ 0, 2, 10],
- [ 1, 3, 4],
- [ 5, 9, 11],
- [ 6, 7, 8]])
- np.median(binned, axis=1)
- array([2., 3., 9., 7.])
- indices=np.array([0,1,1,1,3,1,1,0,0,0,3])
- data = np.arange(len(indices))
- [data[indices == i] for i in range(4)]
- [array([0, 7, 8, 9]),
- array([1, 2, 3, 5, 6]),
- array([], dtype=int64),
- array([ 4, 10])]
- [np.median(data[indices == i]) for i in range(4)]
- [7.5, 3.0, nan, 7.0]
Add Comment
Please, Sign In to add comment