Pandas Groupby 带误差范围的整数

Pandas Groupby integer with margin of error

我有一个包含两个整数列的数据框,分别表示文本字符串的开头和结尾。我想按文本长度(结束 - 开始)对我的行进行分组,但误差幅度为 +- 5 个字符,这样就会发生这样的事情:

 start    end
 0        251
 1        250
 2        250

 0        500
 1        500
 0        499

我怎样才能实现这样的目标? 这是我现在使用的代码

d = {'text': ["aaa", "bbb", "ccc", "ddd", "eee", "fff"], 
    'start': [0, 1, 0, 2, 1, 0], 
    'end': [250, 500, 501, 251, 249, 499]}

df = pd.DataFrame(data=d)

df = df.groupby(['start', 'end'])

我最终通过四舍五入文本的长度解决了问题。

df['rounded_length'] = (df['end'] - df['start']).round(-1)

df = df.groupby('rounded_length')

我所有的值都是10的倍数,我可以这样分组。