我有以下数据框:
data = dict(name=['a', 'a', 'a', 'b', 'b', 'c', 'd'])
df = pd.DataFrame(data=data, columns=data.keys())
如何创建一个新行,其值与name
的唯一值相对应?
请提供以下信息:
df.index = [1, 1, 1, 2, 2, 3, 4]
答案 0 :(得分:2)
列出三种方法
df.index=pd.factorize(df.name)[0]+1
df.index=df.name.astype('category').cat.codes+1
df.index=df.groupby('name').ngroup()+1