有时候我们需要添加一列自动增加数字的列,可以用下面两种方法:
第一种
>>> 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_ID0 0 apple 4 8801 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 count0 880 apple 41 881 orange 2补充:pandas新增一列作为id,或者新增有默认值的一列
原始数据:
我们想要在text这一列前面加上一列作为id(数字从小到大吧),在后面加上一列作为标签,默认0吧
import pandas as pd data = pd.read_csv('test.txt')n = len(data)+1nlist = range(1,n)data['id'] = nlist data['label'] = 0print(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表示行首有字段名称最后数据:
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。