Supposing your dataset is as follows:
name price
A 10
A 15
… …
B 20
B 30
… …
Hope the Stata codes below will help you to solve your problem.
sort name
egen int gname = group(name)
qui tabu gname
local ngname = `r(r)'
forvalue i = 1(1)`ngname' {
qui sum price if gname == `i', d
gen int group`i' = irecode(price,`r(p25)',`r(p75)') if gname == `i'
}
sort name price group1-group`ngname'