首页 > 解决方案 > Pandas:如何向新列添加增量值?

问题描述

我有一个数据框,我想在其中添加一个列 id,对于第一行,我想以一个精确的值开始(例如 start_id = 1200),并且对于每一行,在前一个 id 的值上加 1。

数据框:

    x   
1   paris   
2   paris  
3   lyon  
4   lyon   
5   toulouse

预期输出:

    id     x      
1   1200   paris   
2   1201   paris  
3   1202   lyon  
4   1203   lyon   
5   1204   toulouse

我试过这个但不起作用:

df.insert(start_id, 'id', range(start_id, 1 + len(df)))

我怎样才能做到这一点 ?

标签: pythonpandasdataframe

解决方案


range()使用and的一种方法len(df),因此它将从1200开始并逐渐添加row'sidcolumn

df['id'] = range(1200, 1200+len(df))

推荐阅读