Python 3.x 要为重复的行分配id吗
想要这样吗Python 3.x 要为重复的行分配id吗,python-3.x,pandas,Python 3.x,Pandas,想要这样吗 id name age year 0 khu 12 2018 1 she 21 2019 2 waqar 22 2015 3 khu 12 2018 4 she 21 2018 5 waqar 22 2015 使用: 使用: 也可以使用factorize检查category和c
id name age year
0 khu 12 2018
1 she 21 2019
2 waqar 22 2015
3 khu 12 2018
4 she 21 2018
5 waqar 22 2015
使用:
使用:
也可以使用
factorize
检查category
和cat.code
,或sklearn
LabelEncoder
df['id'] = df.groupby('name', sort=False).ngroup()
#if need grouping by multiple columns for check duplicates
#df['id'] = df.groupby(['name','age'], sort=False).ngroup()
print (df)
id name age year
0 0 khu 12 2018
1 1 she 21 2019
2 2 waqar 22 2015
3 0 khu 12 2018
4 1 she 21 2018
5 2 waqar 22 2015
也可以使用
factorize
检查category
和cat.code
,或sklearn
LabelEncoder
df['id'] = df.groupby('name', sort=False).ngroup()
#if need grouping by multiple columns for check duplicates
#df['id'] = df.groupby(['name','age'], sort=False).ngroup()
print (df)
id name age year
0 0 khu 12 2018
1 1 she 21 2019
2 2 waqar 22 2015
3 0 khu 12 2018
4 1 she 21 2018
5 2 waqar 22 2015
请解释您想要做什么,您尝试过做什么,以及您如何失败/发生任何错误。如果姓名年龄和年份行有相同的记录,则与上例中的相同id,请解释您想要做什么,您尝试执行的操作以及失败的原因/发生的任何错误。如果姓名年龄行和年份行具有相同的记录,则与上例中的相同id感谢您向我介绍
ngroup()
@KHURRAM可能被添加和删除?因为勾号是空的,不是绿色的。谢谢你给我介绍ngroup()
@KHURRAM可能被添加和删除?因为勾号是空的,不是绿色的。
df['id']=pd.factorize(df['name'])[0]
df
Out[470]:
id name age year
0 0 khu 12 2018
1 1 she 21 2019
2 2 waqar 22 2015
3 0 khu 12 2018
4 1 she 21 2018
5 2 waqar 22 2015