提问人:Dag2 提问时间:8/19/2023 更新时间:8/19/2023 访问量:38
Binning 以离散化 python 中的数值变量 [duplicate]
Binning to discretize a numeric variable in python [duplicate]
问:
我想将数据框的数值变量装箱,使其成为分类变量。我的变量中的值范围为 1-16,您可以在此处看到它的输出值计数。
2 23660
4 11051
1 6911
6 4350
3 3876
5 2596
8 1198
7 781
10 291
9 241
12 107
16 51
11 50
14 38
13 25
15 13
我想将每个大于 8 的值都装箱到字符串值“8+”中。
我尝试了以下代码:
df['var1_binned'] = pd.cut(df['var1'], bins=[0,1,2,3,4,5,6,7,8], labels=['1','2','3','4','5','6','7','8+'])
print(df['var1_binned'].value_counts())
但我只收到了以下输出:
2 23660
4 11051
1 6911
6 4350
3 3876
5 2596
8+ 1198
7 781
Name: var1_binned, dtype: int64
不知何故,它只用 1-8 的值标记每一行,但完全排除了 8 以上的所有内容。 有人可以帮忙吗?
答: 暂无答案
评论
cut
0
bins
bins