3
我已经问了这个问题的R,但我现在试图做它在熊猫。我试图用熊猫将分类变量重新编码为整数。鉴于:在熊猫中重新编码变量整数
group
005j
005j
0k16
0fff
0fff
我想获得一系列代表相同的分组增加整数:
group intCode
005j 1
005j 1
0k16 2
0fff 3
0fff 3
我已经问了这个问题的R,但我现在试图做它在熊猫。我试图用熊猫将分类变量重新编码为整数。鉴于:在熊猫中重新编码变量整数
group
005j
005j
0k16
0fff
0fff
我想获得一系列代表相同的分组增加整数:
group intCode
005j 1
005j 1
0k16 2
0fff 3
0fff 3
In [10]: df['intCode'] = pd.Categorical.from_array(df.group).labels
In [11]: df
Out[11]:
group intCode
0 005j 0
1 005j 0
2 0k16 2
3 0fff 1
4 0fff 1
你可以得到独特的价值观
>>> df = pd.read_clipboard()
>>> groups = df['group'].unique()
指数它们
>>> groups = pd.DataFrame(groups, columns=['group']).reset_index()
并合并(加入1从1开始而不是从0开始):
>>> groups['index'] += 1
>>> df.merge(groups)
group index
0 005j 1
1 005j 1
2 0k16 2
3 0fff 3
4 0fff 3
[5 rows x 2 columns]