pandas添加自增列的2种实现方案
有时候我们需要添加一列自动增加数字的列,可以用下面两种方法:
第一种
>>> 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表示行首有字段名称
最后数据:
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。如有错误或未考虑完全的地方,望不吝赐教。
相关推荐
-
python中pandas.DataFrame对行与列求和及添加新行与列示例
本文介绍的是python中pandas.DataFrame对行与列求和及添加新行与列的相关资料,下面话不多说,来看看详细的介绍吧. 方法如下: 导入模块: from pandas import DataFrame import pandas as pd import numpy as np 生成DataFrame数据 df = DataFrame(np.random.randn(4, 5), columns=['A', 'B', 'C', 'D', 'E']) DataFrame数据预览: A
-
Python Pandas 对列/行进行选择,增加,删除操作
一.列操作 1.1 选择列 d = {'one' : pd.Series([1, 2, 3], index=['a', 'b', 'c']), 'two' : pd.Series([1, 2, 3, 4], index=['a', 'b', 'c', 'd'])} df = pd.DataFrame(d) print (df ['one']) # 选择其中一列进行显示,列长度为最长列的长度 # 除了 index 和 数据,还会显示 列表头名,和 数据 类型 运行结果: a 1.0 b
-
Python pandas如何向excel添加数据
pandas读取.写入csv数据非常方便,但是有时希望通过excel画个简单的图表看一下数据质量.变化趋势并保存,这时候csv格式的数据就略显不便,因此尝试直接将数据写入excel文件. pandas可以写入一个或者工作簿,两种方法介绍如下: 1.如果是将整个DafaFrame写入excel,则调用to_excel()方法即可实现,示例代码如下: # output为要保存的Dataframe output.to_excel('保存路径 + 文件名.xlsx') 2.有多个数据需要写入多个exce
-
python实现在pandas.DataFrame添加一行
实例如下所示: from pandas import * from random import * df = DataFrame(columns=('lib', 'qty1', 'qty2'))#生成空的pandas表 for i in range(5):#插入一行<span id="transmark" style="display:none;"></span> df.loc[i] = [randint(-1,1) for n in ran
-
pandas添加自增列的2种实现方案
有时候我们需要添加一列自动增加数字的列,可以用下面两种方法: 第一种 >>> 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' >>> d
-
SQL Server 2008怎样添加自增列实现自增序号
在做<机房收费系统>的时候,有的表需要添加自增列,在添加新纪录时自动添加一个序号.下面我给大家介绍两种添加方法: 一.通过T-SQL代码. 复制代码 代码如下: alter table 表名 add 列名 int IDENTITY(1,1) NOT NULL 这里用到了identity关键字:indentity(a,b),a b均为正整数,a表示开始数,b表示步长,indentity(1,1)就代表从1开始,每次增加1 二.通过企业管理器 打开对象资源管理器,新建表,如下图 插入列,设置列属
-
SqlServer Mysql数据库修改自增列的值及相应问题的解决方案
SQL Server 平台修改自增列值 由于之前处理过sql server数据库的迁移工作,尝试过其自增列值的变更,但是通过SQL 语句修改自增列值,是严格不允许的,直接报错(无法更新标识列 '自增列名称').sql server我测试是2008.2012和2014,都不允许变更自增列值,我相信SQL Server 2005+的环境均不允许变更字段列值. 如果非要在SQL Server 平台修改自增列值的,那就手动需要自增列属性,然后修改该列值,修改成功后再手动添加自增列属性.如果在生成环境修改
-
pandas添加新列的5种常见方法
目录 前言 一.insert()函数 二.直接赋值法 三.reindex()函数 四.concat()函数 五.loc()函数 附:pandas根据现有列新添加一列 总结 前言 pandas为DataFrame格式数据添加新列的方法非常简单,只需要新建一个列索引,再为其赋值即可. 以下总结了5种常见添加新列的方法. 首先,创建一个DataFrame结构数据,作为数据举例. import pandas as pd # 创建一个DataFrame结构数据 data = {'a': ['a0', 'a
-
Java使用EasyExcel动态添加自增序号列
目录 前言 实现 思路 其它 总结 前言 本文将介绍如何通过使用EasyExcel自定义拦截器实现在最终的Excel文件中新增一列自增的序号列,最终的效果如下: 此外,本文所使用的完整代码示例已上传到GitHub. 实现 本文主要是通过自定义一个继承AbstractRowWriteHandler的拦截器来实现在最终导出的结果中新增序号列,通过修改源码中保存头部标题的Map内容来给自己添加的序号列留出位置,先展示最终的代码: /** * 自定义 excel 行处理器, 增加序号列 * * @aut
-
PostgreSQL三种自增列sequence,serial,identity的用法区别
这三个对象都可以实现自增,这里从如下几个维度来看看这几个对象有哪些不同,其中功能性上看,大部分特性都是一致的或者类似的. 1.sequence在所有数据库中的性质都一样,它是跟具体的字段不是强绑定的,其特点是支持多个对个对象之间共享. sequence作为自增字段值的时候,对表的写入需要另外单独授权sequence(GRANT USAGE ON SEQUENCE test_old_id_seq;) sequence类型的字段表,在使用CREATE TABLE new_table LIKE old
-
在ASP.NET 2.0中操作数据之六十八:为DataTable添加额外的列
导言: 当向类型化的数据集(Typed DataSet)添加一个TableAdapter时,相应的DataTable的构架已经由TableAdapter的主查询定义好了.比如,如果主查询返回A, B,C这3个域,那么 DataTable将有对应的3个列A, B,和C.除了主查询以外,TableAdapter还可以包含其他的查询,可能是返回基于某些参数的数据.比如,ProductsTableAdapter的主查询返回所有产品的信息,此外,ProductsTableAdapter还包含诸如GetPr
-
Pandas 数据框增、删、改、查、去重、抽样基本操作方法
总括 pandas的索引函数主要有三种: loc 标签索引,行和列的名称 iloc 整型索引(绝对位置索引),绝对意义上的几行几列,起始索引为0 ix 是 iloc 和 loc的合体 at是loc的快捷方式 iat是iloc的快捷方式 建立测试数据集: import pandas as pd df = pd.DataFrame({'a': [1, 2, 3], 'b': ['a', 'b', 'c'],'c': ["A","B","C"]}) p
-
详解mysql插入数据后返回自增ID的七种方法
引言 mysql 和 oracle 插入的时候有一个很大的区别是: oracle 支持序列做 id: mysql 本身有一个列可以做自增长字段. mysql 在插入一条数据后,如何能获得到这个自增 id 的值呢? 一:使用 last_insert_id() SELECT LAST_INSERT_ID(); 1. 每次 mysql 的 query 操作在 mysql 服务器上可以理解为一次"原子"操作, 写操作常常需要锁表, 这里的锁表是 mysql 应用服务器锁表不是我们的应用程序锁表
-
深入探寻mysql自增列导致主键重复问题的原因
废话少说,进入正题. 拿到问题后,首先查看现场,发现问题表的中记录的最大值比自增列的值要大,那么很明显,当有记录进行插入时,自增列产生的值就有可能与已有的记录主键冲突,导致出错.首先想办法解决问题,通过人工调大自增列的值,保证大于表内已有的主键即可,调整后,导数据正常.问题是解决了,接下来要搞清楚问题原因,什么操作导致了这种现象的发生呢? 这里有一种可能,即业务逻辑包含更新自增主键的代码,由于mysql的update动作不会同时更新自增列值,若更新主键值比自增列大,也会导致上述现象:记录最大值比
随机推荐
- Linux下VMware workstation的3种使用技巧
- Ext.Net学习笔记之button小结
- 液晶显示器维修指南小技巧
- 批处理查看同一子网络下的所有IP在线情况
- Oracle如何实现跨库查询
- Python用zip函数同时遍历多个迭代器示例详解
- Android UI之ImageView实现图片旋转和缩放
- Android 高仿微信转账金钱输入框规则
- 解析mysql不重复字段值求和
- 浅谈Ajax相关及其优缺点
- ASP ajax分页教程一
- Java的JNI快速入门教程(推荐)
- 解析如何查看Oracle数据库中某张表的字段个数
- 利用计划任务和VBS脚本实现自动WEB共享文件夹里的文件
- 原生JS实现幻灯片
- Ubuntu LTS服务器部署Jenkins详细介绍
- 默默简单的写了一个模板引擎
- Java中生成随机数的实现方法总结
- mysql数据库无法被其他ip访问的解决方法
- 净化网络杀机 手工绞杀未知病毒