当前位置:主页 > 软件编程 > Python代码 >

pandas添加自增列的2种实现方案

时间:2022-03-08 10:17:55 | 栏目:Python代码 | 点击:

有时候我们需要添加一列自动增加数字的列,可以用下面两种方法:

第一种

>>> import pandas as pd
>>> df = pd.DataFrame([{'name':'apple', 'count':4},\
            {'name':'orange', 'count':2}])
>>> df = df.reset_index()
>>> df.columns.values[0] = 'New_ID'
>>> df['New_ID'] = df.index + 880
>>> df
  New_ID  name count New_ID
0    0  apple   4   880
1    1 orange   2   881

第二种

>>> import pandas as pd
>>> df = pd.DataFrame([{'name':'apple', 'count':4},\
            {'name':'orange', 'count':2}])
>>> df.insert(0, 'New_ID', range(880, 880 + len(df)))
>>> df
  New_ID  name count
0   880  apple   4
1   881 orange   2

补充:pandas新增一列作为id,或者新增有默认值的一列

原始数据:

我们想要在text这一列前面加上一列作为id(数字从小到大吧),在后面加上一列作为标签,默认0吧

import pandas as pd
 
data = pd.read_csv('test.txt')
n = len(data)+1
nlist = range(1,n)
data['id'] = nlist
 
data['label'] = 0
print(data.head())
data.to_csv('newTest.csv',columns=['id','text','label'],index=0,header=1)
可以加上 df=pd.read_csv(sourceFile,low_memory=False) #读取csv,设置low_memory=False防止内存不够时报警告

#以下保存指定的列到新的csv文件,index=0表示不为每一行自动编号,header=1表示行首有字段名称

最后数据:

您可能感兴趣的文章:

相关文章