在Pandas DataFrame中插入一列的方法实例

目录
  • 引言
  • 示例1:插入新列作为第一列
  • 示例2:插入新列作为中间列
  • 示例3:插入新列作为最后一列
  • 补充:按条件选择分组分别赋值
  • 总结

引言

通常,您可能希望在 Pandas DataFrame 中插入一个新列。幸运的是,使用 pandas insert()函数很容易做到这一点,该函数使用以下语法:

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

在哪里:

  • loc: 插入列的索引。第一列是 0。
  • column: 赋予新列的名称。
  • value: 新列的值数组。
  • allow_duplicates: 是否允许新列名匹配现有列名。默认值为假。

本教程展示了如何在实践中使用此功能的几个示例。

示例 1:插入新列作为第一列

以下代码显示了如何插入一个新列作为现有 DataFrame 的第一列:

import pandas as pd

#create DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19],
                   'assists': [5, 7, 7, 9, 12],
                   'rebounds': [11, 8, 10, 6, 6]})

#view DataFrame
df
        points	assists	rebounds
0	25	5	11
1	12	7	8
2	15	7	10
3	14	9	6
4	19	12	6

#insert new column 'player' as first column
player_vals = ['A', 'B', 'C', 'D', 'E']
df.insert(loc=0, column='player', value=player_vals)
df

        player	points	assists	rebounds
0	A	25	5	11
1	B	12	7	8
2	C	15	7	10
3	D	14	9	6
4	E	19	12	6

示例 2:插入新列作为中间列

以下代码显示了如何插入一个新列作为现有 DataFrame 的第三列:

import pandas as pd

#create DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19],
                   'assists': [5, 7, 7, 9, 12],
                   'rebounds': [11, 8, 10, 6, 6]})

#insert new column 'player' as third column
player_vals = ['A', 'B', 'C', 'D', 'E']
df.insert(loc=2, column='player', value=player_vals)
df

        points	assists	player	rebounds
0	25	5	A	11
1	12	7	B	8
2	15	7	C	10
3	14	9	D	6
4	19	12	E	6

示例 3:插入新列作为最后一列

以下代码显示了如何插入一个新列作为现有 DataFrame 的最后一列:

import pandas as pd

#create DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19],
                   'assists': [5, 7, 7, 9, 12],
                   'rebounds': [11, 8, 10, 6, 6]})

#insert new column 'player' as last column
player_vals = ['A', 'B', 'C', 'D', 'E']
df.insert(loc=len(df.columns), column='player', value=player_vals)
df

        points	assists	player	rebounds
0	25	5	A	11
1	12	7	B	8
2	15	7	C	10
3	14	9	D	6
4	19	12	E	6

请注意,使用 len(df.columns) 允许您在任何数据帧中插入一个新列作为最后一列,无论它可能有多少列。

您可以在此处找到 insert() 函数的完整文档。

补充:按条件选择分组分别赋值

按条件先选择数据,然后对这部分数据赋值新列

实例:高低温差大于10度,则认为温差大

# 先创建空列(这是第一种创建新列的方法)
df['wencha_type'] = ''

df.loc[df["bWendu"]-df["yWendu"]>10, "wencha_type"] = "温差大"

df.loc[df["bWendu"]-df["yWendu"]<=10, "wencha_type"] = "温差正常"

总结

到此这篇关于在Pandas DataFrame中插入一列的文章就介绍到这了,更多相关Pandas DataFrame插入列内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • pandas DataFrame的修改方法(值、列、索引)

    对于DataFrame的修改操作其实有很多,不单单是某个部分的值的修改,还有一些索引的修改.列名的修改,类型修改等等.我们仅选取部分进行介绍. 一.值的修改 DataFrame的修改方法,其实前面介绍loc方法的时候介绍了一些. 1. loc方法修改 loc方法实际上是定位某个位置的数据的,但是定位完以后就可以对此位置的数据进行修改,使用此方法可以对DataFrame进行的修改如下: 1.对某行.某N行进行修改: 2.对某列.某N列进行修改: 3.对横坐标为某行或某N行,纵坐标为某列或者某N列的

  • pandas 空的dataframe 插入列名的示例

    如下所示: colum = ['性别','年龄','M','样本类型'] + muta_list + ['B'] data1 = pd.DataFrame(columns=colum) 以上这篇pandas 空的dataframe 插入列名的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • pandas.DataFrame删除/选取含有特定数值的行或列实例

    1.删除/选取某列含有特殊数值的行 import pandas as pd import numpy as np a=np.array([[1,2,3],[4,5,6],[7,8,9]]) df1=pd.DataFrame(a,index=['row0','row1','row2'],columns=list('ABC')) print(df1) df2=df1.copy() #删除/选取某列含有特定数值的行 #df1=df1[df1['A'].isin([1])] #df1[df1['A'].

  • pandas对dataFrame中某一个列的数据进行处理的方法

    背景:dataFrame的数据,想对某一个列做逻辑处理,生成新的列,或覆盖原有列的值 下面例子中的df均为pandas.DataFrame()的数据 1.增加新列,或更改某列的值 df["列名"]=值 如果值为固定的一个值,则dataFrame中该列所有值均为这个数据 2.处理某列 df["列名"]=df.apply(lambda x:方法名(x,入参2),axis=1) 说明: 1.方法名为单独的方法名,可以处理传入的x数据 2.x为每一行的数据,做为方法的入参1

  • Pandas DataFrame数据的更改、插入新增的列和行的方法

    一.更改DataFrame的某些值 1.更改DataFrame中的数据,原理是将这部分数据提取出来,重新赋值为新的数据. 2.需要注意的是,数据更改直接针对DataFrame原数据更改,操作无法撤销,如果做出更改,需要对更改条件做确认或对数据进行备份. 代码: import pandas as pd df1 = pd.DataFrame([['Snow','M',22],['Tyrion','M',32],['Sansa','F',18],['Arya','F',14]], columns=['

  • 在Pandas DataFrame中插入一列的方法实例

    目录 引言 示例1:插入新列作为第一列 示例2:插入新列作为中间列 示例3:插入新列作为最后一列 补充:按条件选择分组分别赋值 总结 引言 通常,您可能希望在 Pandas DataFrame 中插入一个新列.幸运的是,使用 pandas insert()函数很容易做到这一点,该函数使用以下语法: insert(loc, column, value, allow_duplicates=False) 在哪里: loc: 插入列的索引.第一列是 0. column: 赋予新列的名称. value:

  • Python  处理 Pandas DataFrame 中的行和列

    目录 处理列 处理行 前言: 数据框是一种二维数据结构,即数据以表格的方式在行和列中对齐.我们可以对行/列执行基本操作,例如选择.删除.添加和重命名.在本文中,我们使用的是nba.csv文件. 处理列 为了处理列,我们对列执行基本操作,例如选择.删除.添加和重命名. 列选择:为了在 Pandas DataFrame 中选择一列,我们可以通过列名调用它们来访问这些列. # Import pandas package import pandas as pd # 定义包含员工数据的字典 data =

  • 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

  • 如何更改 pandas dataframe 中两列的位置

    如何更改 pandas dataframe 中两列的位置: 把其中的某列移到第一列的位置. 原来的 df 是: df = pd.read_csv('I:/Papers/consumer/codeandpaper/TmallData/result01.csv') Net Upper Lower Mid Zsore Answer option More than once a day 0% 0.22% -0.12% 2 65 Once a day 0% 0.32% -0.19% 3 45 Sever

  • pandas.DataFrame中提取特定类型dtype的列

    目录 select_dtypes()的基本用法 指定要提取的类型:参数include 指定要排除的类型:参数exclude pandas.DataFrame为每一列保存一个数据类型dtype. 要仅提取(选择)特定数据类型为dtype的列,请使用pandas.DataFrame的select_dtypes()方法. 以带有各种数据类型的列的pandas.DataFrame为例. import pandas as pd df = pd.DataFrame({'a': [1, 2, 1, 3],  

  • pandas.DataFrame 根据条件新建列并赋值的方法

    实例如下所示: import numpy as np import pandas as pd data = {'city': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen', 'Hangzhou', 'Chongqing'], 'year': [2016,2016,2015,2017,2016, 2016], 'population': [2100, 2300, 1000, 700, 500, 500]} frame = pd.DataFrame(

  • Pandas DataFrame中的tuple元素遍历的实现

    pandas中遍历dataframe的每一个元素 假如有一个需求场景需要遍历一个csv或excel中的每一个元素,判断这个元素是否含有某个关键字 那么可以用python的pandas库来实现. 方法一: pandas的dataframe有一个很好用的函数applymap,它可以把某个函数应用到dataframe的每一个元素上,而且比常规的for循环去遍历每个元素要快很多.如下是相关代码: import pandas as pd data = [["str","ewt"

  • 详解pandas.DataFrame中删除包涵特定字符串所在的行

    你在使用pandas处理DataFrame中是否遇到过如下这类问题?我们需要删除某一列所有元素中含有固定字符元素所在的行,比如下面的例子: 以上所述是小编给大家介绍的pandas.DataFrame中删除包涵特定字符串所在的行详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的.在此也非常感谢大家对我们网站的支持!

  • pandas dataframe 中的explode函数用法详解

    在使用 pandas 进行数据分析的过程中,我们常常会遇到将一行数据展开成多行的需求,多么希望能有一个类似于 hive sql 中的 explode 函数. 这个函数如下: Code # !/usr/bin/env python # -*- coding:utf-8 -*- # create on 18/4/13 import pandas as pd def dataframe_explode(dataframe, fieldname): temp_fieldname = fieldname

  • Pandas.DataFrame删除指定行和列(drop)的实现

    目录 DataFrame指定的行删除 按行名指定(行标签) 按行号指定 未设置行名的注意事项 DataFrame指定的列删除 按列名指定(列标签) 按列号指定 多行多列的删除 使用drop()方法删除pandas.DataFrame的行和列. 在0.21.0版之前,请使用参数labels和axis指定行和列.从0.21.0开始,可以使用index或columns. 在此,将对以下内容进行说明. DataFrame指定的行删除 按行名指定(行标签) 按行号指定 未设置行名的注意事项 DataFra

随机推荐