我有一个pandas数据框,其中包含一个包含年龄列的csv。
示例数据如下:
[0-10)
[10-20)
[20-30)
如何分解数据:
0
1
2
取决于每行中的年龄。
答案 0 :(得分:1)
使用pd.factorize:
df['code'] = pd.factorize(df[0])[0]
输出:
0 code
0 [0-10) 0
1 [10-20) 1
2 [20-30) 2
或者使用带有cat访问器的category数据类型:
df['code2'] = df[0].astype('category').cat.codes
输出:
0 code code2
0 [0-10) 0 0
1 [10-20) 1 1
2 [20-30) 2 2