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的倍数,我可以这样分组。
我有一个包含两个整数列的数据框,分别表示文本字符串的开头和结尾。我想按文本长度(结束 - 开始)对我的行进行分组,但误差幅度为 +- 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的倍数,我可以这样分组。