How about using Series and putting the parts of the DataFrame that you're interested into that, then calling cut on the series object?
price_series = pd.Series(df.price.tolist(), index=df.recd)
and then
pd.qcut(price_series, q=3)
and so on. (Though I think @Jeff's answer is best)