2
ID 열이있는 DataFrame에 일부 데이터가 있습니다.팬더의 값에 대한 고유 0 기반 ID
data = DataFrame({'id' : [50,50,30,10,50,50,30]})
각 고유 ID마다 새로운 고유 식별자가 필요합니다. 나는 정수가 0부터 순차적 인 정수가되도록하고 싶습니다. 여기에 제가 지금까지 가지고있는 것이 있습니다 :
unique = data[['id']].drop_duplicates()
unique['group'] = np.arange(len(unique))
unique.set_index('id')
data = data.merge(unique, 'inner', on = 'id')
이 작동하지만 약간 더러운 것 같습니다. 더 좋은 방법이 있습니까? pandas.factorize
가하는 일입니다
간단한 방법이 있나요 원래 데이터 프레임에 새로운 ID를 부여 하시겠습니까? –
예. 당신의 예제 인 John을 재현하기 위해서는''data [ 'group'] = pd.factorize (data.id) [0]''을 사용하십시오. 또는, 대신에''data [id] = ...''에 할당하여 이전 id를 다시 쓸 수도 있습니다. (귀하의 질문을 이해 했습니까?) –