具有增量数字的新列,其初始基于不同的列值(pandas)

时间:2017-05-10 12:16:32

标签: python pandas

我想为已定义行中具有相同值的行添加一个带增量数字的列;

e.g。如果我有这个df

df=pd.DataFrame([['a','b'],['a','c'],['c','b']])

我想要第一列的增量数字。看起来应该是这样的

df=pd.DataFrame([['a','b',1],['a','c',2],['c','b',1]])

我找到了sql解决方案,但我正在使用ipython / pandas。有人能帮助我吗?

1 个答案:

答案 0 :(得分:2)

使用cumcount,了解原始length的新列名称columns

print (len(df.columns))
2

df[len(df.columns)] = df.groupby(0).cumcount() + 1
print (df)
   0  1  2
0  a  b  1
1  a  c  2
2  c  b  1