Use numpy to generate all possible combinations in a range using numpy in python

Is there a faster way to generate possible combinations without repetitions in numpy? For example, if I needed all 3 number combinations in range(1,5) I will get (1, 2, 3), (1, 2, 4), (1, 3, 4), (2, 3, 4).I'm using the following code which works but is quite slow for me and am wondering if there's a faster method:

from itertools import *
for c in combinations(range(1,48), 6):