The pandas cut() function bins values in a 1-dimensional array. Consider the following 1-dimensional array with 10 values. Let's group it into three bins:
bin_data = np.array([1, 5, 2, 12, 3, 25, 9, 10, 11, 4])
pd.cut(bin_data, bins = 3)
The following is the output:

pandas cut function with three bins
Each of the 10 elements is mapped to one of the three bins. The cut function maps the items to a bin and provides information about each bin. Instead of specifying the number of bins, the boundaries of the bins could also be provided in a sequence:
pd.cut(bin_data, bins = [0.5, 7, 10, 20, 30])
The following is the output:

pandas cut function with bin values
The intervals for binning can be directly defined using the pandas interval_range function. Consider the following example, demonstrating the creation of a pandas IntervalIndex object:
interval = pd.interval_range...