cut into n bins with same number of elements python code example

Example 1: difference between cut and qcut pandas

df['ext price'].value_counts(bins=4, sort=False)

#res
(55603.988000000005, 87998.212]     5
(87998.212, 120263.375]            12
(120263.375, 152528.538]            2
(152528.538, 184793.7]              1
Name: ext price, dtype: int64

Example 2: difference between cut and qcut pandas

\
df['quantile_ex_4'] = pd.qcut(df['ext price'],
                            q=[0, .2, .4, .6, .8, 1],  #quartiles bin range will vary
                            labels=False,     #returns integers as categories
                            precision=0)
df.head()
#all bins will have roughly same no. of observation