我有一个数据框列,它指定用户执行某项活动的次数。例如。
>>> df['ActivityCount']
Users ActivityCount
User0 220
User1 190
User2 105
User3 109
User4 271
User5 265
...
User95 64
User96 15
User97 168
User98 251
User99 278
Name: ActivityCount, Length: 100, dtype: int32
>>> activities = sorted(df['ActivityCount'].unique())
[9, 15, 16, 17, 20, 23, 25, 26, 28, 31, 33, 34, 36, 38, 39, 43, 49, 57, 59, 64, 65, 71, 76, 77, 78,
83, 88, 94, 95, 100, 105, 109, 110, 111, 115, 116, 117, 120, 132, 137, 138, 139, 140, 141, 144, 145, 148, 153, 155, 157, 162, 168, 177, 180, 182, 186, 190, 192, 194, 197, 203, 212, 213, 220, 223, 231, 232, 238, 240, 244, 247, 251, 255, 258, 260, 265, 268, 269, 271, 272, 276, 278, 282, 283, 285, 290]
根据他们的 ActivityCount,我必须将用户分为 5 个不同的类别,例如A, B, C, D和E。活动计数范围不时变化。在上面的例子中,它大约在中间(9-290)(系列的最低和最高),它可以是(5-500)or (5 to 30)。在上面的示例中,我可以将活动的最大数量除以 5,然后将每个用户分类在 58 的范围内,例如(from 290/5),Range A: 0-58...等Range B: 59-116Range C: 117-174
有没有其他方法可以使用 pandas 或 numpy 实现此目的,以便我可以直接对给定类别中的列进行分类?预期输出:-
>>> df
Users ActivityCount Category/Range
User0 220 D
User1 190 D
User2 105 B
User3 109 B
User4 271 E
User5 265 E
...
User95 64 B
User96 15 A
User97 168 C
User98 251 E
User99 278 E
慕容3067478
慕尼黑的夜晚无繁华
相关分类