【发布时间】:2019-05-16 11:27:49
【问题描述】:
我正在尝试根据特定的 DataFrame 列值创建用户组。我想根据 total_usage 指标创建整个 DataFrame 人口的 10 个用户组。一个示例 DataFrame df 如下所示。
user_id total_usage
1 10
2 10
3 20
4 20
5 30
6 30
7 40
8 40
9 50
10 50
11 60
12 60
13 70
14 70
15 80
16 80
17 90
18 90
19 100
20 100
df 只是整个 DataFrame 的一个 sn-p,它有超过 6000 条记录,但是我希望只有 10 个用户组。
我想要的输出示例如下所示。
user_id total_usage user_group
1 10 10th_group
2 10 10th_group
3 20 9th_group
4 20 9th_group
5 30 8th_group
6 30 8th_group
7 40 7th_group
8 40 7th_group
9 50 6th_group
10 50 6th_group
11 60 5th_group
12 60 5th_group
13 70 4th_group
14 70 4th_group
15 80 3th_group
16 80 3th_group
17 90 2nd_group
18 90 2nd_group
19 100 1st_group
20 100 1st_group
任何人都可以提供的任何帮助将不胜感激。
【问题讨论】:
-
如果
total_usage是 64,user_group会是什么? -
@rsno 我想这将取决于人口中的其他价值如何。我的数据集有 6000 多条记录,因此我尝试以编程方式将这些记录分组。
-
@jezrael 在这个例子中是的。但是,我的完整 DataFrame 包含 6000 多条记录,具有数百个唯一值。
-
@moe_95 - 所以如果 200 个唯一值需要
1st_group到200th_group? -
@jezrael 不,我希望将整个人口分成 10 组。我的完整
df有 6000 条记录,其中大部分是唯一的(由于小数位)。