gpt4 book ai didi

python - pd.cut 可以一起使用间隔范围和标签吗?

转载 作者:行者123 更新时间:2023-11-30 21:52:31 26 4
gpt4 key购买 nike

我正在摆弄这样的事情。

bins = [0, .25, .5, .75, 1, 1.25, 1.5, 1.75, 2]
labels = ['0', '.25', '.5', '.75', '1', '1.25', '1.5', '1.75', '2']
dataset['RatingScore'] = pd.cut(dataset['Rating'], bins, labels)

我实际上得到的是一个范围,如下所示:(0.75, 1.0]

我希望得到这样的结果:.75 或 1 或 1.25

是否可以获得特定数字而不是范围?谢谢。

安迪,你的代码运行了,它给了我实际的数字,而不是范围,但我也看到了很多差距。

enter image description here

最佳答案

您将labels传递给pd.cut的第三个参数。 pd.cut的第三个参数是right=...。它接受 True/False 作为值。 labels 是非空列表,因此被认为是True。因此,pd.cut 会在没有标签的情况下执行。您需要使用关键字参数来正确指定列表labels作为pd.cut的标签。另一件事,bins 的数量必须比 labels 多一个。您需要将 np.inf 添加到列表 bins

的右侧
s = pd.Series([0.2, 0.6, 0.1, 0.9, 2])
bins = [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, np.inf]
labels = ['0', '.25', '.5', '.75', '1', '1.25', '1.5', '1.75', '2']

s_cat = pd.cut(s, bins=bins, labels=labels)

Out[1165]:
0 0
1 .5
2 0
3 .75
4 1.75
dtype: category
Categories (9, object): [0 < .25 < .5 < .75 ... 1.25 < 1.5 < 1.75 < 2]

关于python - pd.cut 可以一起使用间隔范围和标签吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59884372/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com