python pandas添加新的列,pandas在excel添加新列

  python pandas添加新的列,pandas在excel添加新列

  Pandas向DataFrame格式的数据添加新列的方法非常简单。下面的文章主要介绍了向pandas添加新列的五种常用方法,并通过示例代码进行了详细介绍。有需要的朋友可以参考一下。

  00-1010前言一、insert()函数二、直接赋值方法三、reindex()函数四、concat()函数五、loc()函数附件:pandas根据现有列增加一个新的列摘要。

  

目录

 

  Pandas向DataFrame格式的数据添加新列的方法非常简单,只需创建一个新的列索引并为其赋值。

  以下是添加新列的五种常用方法。

  首先,创建一个DataFrame结构数据作为数据的例子。

  进口熊猫作为pd

  #创建数据帧结构

  data={a: [a0 , a1 , a2],

  b: [b0 , b1 , b2]}

  df=pd。数据帧(数据)

  打印(示例数据:n ,df)

  添加新列的方法如下:

  

前言

 

  语法:

  DataFrame.insert(loc,column,value,allow_duplicates=False)

  参数loc的必填字段,int类型的数据,表示新列插入的列位置,该位置的原始列将向右移动。列必填字段,插入新列的列名。值字段,新列插入的值。如果只提供一个值,则将为所有行设置相同的值。可以是int,string,float等。甚至是值的系列/列表。Allow_duplicates布尔值,用于检查是否存在同名的列。默认值为False,不允许与已有列名重复。示例:插入列c

  Df.insert (loc=2,column= c ,value=3) #在最后一列之后,插入包含所有3个值的C列。

  打印(插入列C: n ,df)

  

一、insert()函数

 

  语法:df [新列名]=新列的值

  示例:插入列d

  Df[d]=[1,2,3] #插入值为[1,2,3]的D列

  打印(插入列D: n ,df)

  注意:该方法不能选择新列插入的位置,默认为最后一列。如果新的列值相同,只需给它分配一个常数。如果插入的值不同,则它们是列表格式的,应该与现有列的行长度一致。例如,如果原始列是3行,新添加的列也必须有3个值。

  

二、直接赋值法

 

  语法:df.reindex(columns=[所有原始列名,新列名],fill_value=value)

  Reindex()函数应用广泛,但这里只针对添加新列。

  示例:插入e列

  1=df.reindex (columns=[a , b , c , d , e]) #没有fill_value参数,默认值为Nan。

  2=df.reindex (columns=[a , b , c , d , e],fill_value=1) #添加fill_value参数,填充值为1。

  Print (Insert column E(不带fill_value参数):n ,df1)

  print( Insert column E(add fill _ value参数):n ,df2)

  注意:这个方法需要添加原始的列名和新的列名。如果列名太多就麻烦了。

  lass="maodian">

  

四、concat()函数

 

  原理:利用拼接的方式,添加新的一列。好处是可以同时新增多个列名。

  concat()函数用法较多,此处只是针对添加新列的用法

  实例:插入f列

  

df1 = pd.concat([df1, pd.DataFrame(columns=[f])])

 

  

 

  

 

  

五、loc()函数

 

  原理:利用loc的行列索引标签来实现。

  语法:df.loc[:,新列名]=值

  实例:插入g列

  

df1.loc[:, g] = 0

 

  

 

  以上就是pandas添加新列的5种常见用法。

  

 

  

附:pandas根据现有列新添加一列

 

  pandas中一个Dataframe,经常需要根据其中一列再新建一列,比如一个常见的例子:需要根据分数来确定等级范围,下面我们就来看一下怎么实现。

  

def getlevel(score):

 

  上面代码运行结果

  

name score level
0 lili 85 good
1 lucy 61 mid
2 tracy 75 mid
3 tony 49 bad
4 mike 90 good

 

  

 

  要实现上面的功能,主要是使用到dataframe中的apply方法。

  上面的代码,对dataframe新增加一列名为level,level由分数一列而来,如果小于60分为bad,60-80之间为mid,80以上为good。

  其中axis=1表示原有dataframe的行不变,列的维数发生改变。

  

 

  

总结

 

  到此这篇关于pandas添加新列的5种常见方法的文章就介绍到这了,更多相关pandas添加新列内容请搜索盛行IT软件开发工作室以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行IT软件开发工作室!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: