pandas Python数据框架分类值

1bqhqjot  于 2023-01-07  发布在  Python
关注(0)|答案(2)|浏览(124)

我有一个来自外地的数据,我想用特定范围的差距来分类它。我想在100范围内分类。即,0-100,100-200,200-300我的代码:

df=pd.DataFrame([112,341,234,78,154],columns=['value'])

    value
0   112
1   341
2   234
3   78
4   154

预期答案:

value  value_range
0   112    100-200
1   341    200-400
2   234    200-300
3   78     0-100
4   154    100-200

我的代码:

df['value_range'] = df['value'].apply(lambda x:[a,b] if x>a and x<b for a,b in zip([0,100,200,300,400],[100,200,300,400,500]))

当前溶液:

SyntaxError: invalid syntax
z9ju0rcb

z9ju0rcb1#

您可以使用pd.cut

df["value_range"] = pd.cut(df["value"], [0, 100, 200, 300, 400], labels=['0-100', '100-200', '200-300', '300-400'])
print(df)

图纸:

value value_range
0    112     100-200
1    341     300-400
2    234     200-300
3     78       0-100
4    154     100-200
46qrfjad

46qrfjad2#

你可以使用奇数IntervalIndex.from_tuples。2只要把元组的值设置成你数据中的值,你就可以开始了!3-听Lil韦恩的

df = pd.DataFrame([112,341,234,78,154],columns=['value'])

bins = pd.IntervalIndex.from_tuples([(0, 100), (100, 200), (200, 300), (300, 400)])
df['value_range'] = pd.cut(df['value'], bins)

相关问题