首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用apply for two pandas column including来使用一列中的元素返回另一列中的列表中的索引?

在使用pandas库时,可以使用apply方法来应用自定义函数到DataFrame的列上。如果想要使用一列中的元素返回另一列中的列表中的索引,可以按照以下步骤进行操作:

  1. 导入pandas库:
代码语言:txt
复制
import pandas as pd
  1. 创建一个示例DataFrame:
代码语言:txt
复制
df = pd.DataFrame({'A': [1, 2, 3, 4, 5], 'B': [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12], [13, 14, 15]]})
  1. 定义一个自定义函数,该函数接收两个参数:一列中的元素和另一列中的列表。在函数中,使用列表的index方法来获取元素在列表中的索引:
代码语言:txt
复制
def get_index(element, lst):
    return lst.index(element)
  1. 使用apply方法将自定义函数应用到DataFrame的两列上,通过设置axis参数为1,表示按行进行操作:
代码语言:txt
复制
df['C'] = df.apply(lambda row: get_index(row['A'], row['B']), axis=1)

在上述代码中,lambda函数用于将每一行的'A'列的元素和'B'列的列表传递给自定义函数get_index,并将返回的索引值赋值给新的列'C'。

最终,DataFrame将会如下所示:

代码语言:txt
复制
   A             B  C
0  1     [1, 2, 3]  0
1  2     [4, 5, 6]  1
2  3     [7, 8, 9]  2
3  4  [10, 11, 12]  1
4  5  [13, 14, 15]  0

以上是使用apply方法来实现一列中的元素返回另一列中的列表中的索引的方法。关于pandas的更多信息和使用方法,可以参考腾讯云的相关产品和文档:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

使用Pandas返回每个个体记录属性为1标签集合

一、前言 前几天在J哥Python群【Z】问了一个Pandas数据处理问题,一起来看看吧。 各位群友,打扰了。能否咨询个pandas处理问题?...左边一列id代表个体/记录,右边是这些个体/记录属性布尔值。我想做个处理,返回每个个体/记录属性为1标签集合。...二、实现过程 这里【Jin】大佬给了一个答案,使用迭代方法进行,如下图所示: 如此顺利地解决了粉丝问题。...后来他粉丝自己朋友也提供了一个更好方法,如下所示: 方法还是很多,不过还得是apply最为Pythonic! 三、总结 大家好,我是皮皮。...这篇文章主要盘点了一个Pandas数据处理问题,文中针对该问题,给出了具体解析和代码实现,帮助粉丝顺利解决了问题。

11130

Pandas常用数据处理方法

本文Pandas知识点包括: 1、合并数据集 2、重塑和轴向旋转 3、数据转换 4、数据聚合 1、合并数据集 Pandas合并数据集有多种方式,这里我们逐一介绍 1.1 数据库风格合并 数据库风格合并指根据索引或某一列值是否相等进行合并方式...,在pandas,这种合并使用merge以及join函数实现。...上面两个表有两重复,如果只根据一列进行合并,则会多出一列重复列,重复列名处理我们一般使用mergesuffixes属性,可以帮我们指定重复列合并后列名: pd.merge(left,right...,通过需要排列长度调用permutation,可产生一个表示新顺序整数数组,最后使用pandastake函数返回指定大小数据即可实现采样。...4、数据聚合 4.1 数据分组 pandas数据分组使用groupby方法,返回是一个GroupBy对象,对分组之后数据,我们可以使用一些聚合函数进行聚合,比如求平均值mean: df = pd.DataFrame

8.3K90

一句Python,一句R︱pandas模块——高级版data.frame

['w'] #选择表格'w'使用类字典属性,返回是Series类型 data.w #选择表格'w'使用点属性,返回是Series类型 data[['w']] #选择表格...'w'返回是DataFrame类型 data[['w','z']] #选择表格'w'、'z' #---2 利用序号寻找--------- data.icol(0) #取data一列...) =R=apply(df,2,mean) #dfpop,按求均值,skipna代表是否跳过均值 这个跟apply很像,返回是按求平均。...Out[210]: A bar 3 foo 5 Name: C, dtype: int64 2、Apply 函数 在向数据框每一行或每一列传递指定函数后,Apply 函数会返回相应值...cut使用方式有以下几种(来源:pandas 数据规整): (1)按序列划分,序列:按序列元素间隔划分 x,返回 x 各个元素分组情况 >>> bins = [0,3,6,9] >>> ser

4.7K40

【Python】这25个Pandas高频实用技巧,不得不服!

最直接办法是使用loc函数并传递::-1,跟Python列表反转时使用切片符号一致: drinks.loc[::-1].head() 如果你还想重置索引使得它从0开始呢?...()会自动检测每一列正确数据类型: df.dtypes Column A int64 Column B float64 Column C object dtype: object...':[[10, 40], [20, 50], [30, 60]]}) df 这里有两,第二包含了Python由整数元素组成列表。...如果我们想要将第二扩展成DataFrame,我们可以对那一列使用apply()函数并传递给Series constructor: df_new = df.col_two.apply(pd.Series...它会返回一个互动HTML报告: 第一部分为该数据集总览,以及该数据集可能出现问题列表; 第二部分为每一列总结。

6.4K40

Pandas

需要注意是 loc 函数第一个参数不能直接传入整数,可以考虑送个列表进去 DataFrame.iloc[]访问 使用方法与 loc 相似,主要区别是该函数在使用时对索引可以用索引号。...) 缺失值补充 df.isnull().T.any() == True返回缺失值所在行索引 也可以使用 pandas.DataFrame.fillna()方法进行常量填补() 输入字典指定每一列填补值...) df.join()方法适用于那些 index 相似或者相同且没有重复列 dfs,默认使用索引匹配也支持一个 df 索引英语另一个 df 索引 join 起来 left1 = pd.DataFrame...(),这个是用来将多转化一列: pd.melt(df, id_vars=['key'], value_vars=['A', 'B']) 该函数最后返回是一个以id_vars列作为索引,以value_vars...传入一个函数名组成列表,则会将每一个函数函数名作为返回列名,如果不希望使用函数名作为列名,可以将列表元素写成类似’(column_name,function)'元组形式指定列名为name

9.1K30

【Python环境】Python结构化数据分析利器-Pandas简介

二者与Python基本数据结构List也很相近,其区别是:List元素可以是不同数据类型,而Array和Series则只允许存储相同数据类型,这样可以更有效使用内存,提高运算效率。...或者以数据库进行类比,DataFrame每一行是一个记录,名称为Index一个元素,而每一列则为一个字段,是这个记录一个属性。...从列表字典构建DataFrame,其中嵌套每个列表(List)代表是一个,字典名字则是标签。这里要注意是每个列表元素数量应该相同。...List元素对应。...DataFrame一列,这里使用是匿名lambda函数,与Rapply函数类似 设置索引 df.set_index('one') 重命名列 df.rename(columns={u'one':'

15K100

Pandas数据分析包

Series、Numpy一维Array、Python基本数据结构List区别:List元素可以是不同数据类型,而Array和Series则只允许存储相同数据类型,这样可以更有效使用内存,...,只要有一个索引数组或列表即可。...函数应用和映射 numpyufuncs(元素级数组方法) DataFrameapply方法 对象applymap方法(因为Series有一个应用于元素map方法) # -*- coding:...,它在修正数据,用一个DataFrame填补前面的DataFrameNAN数据 Merge, join, and concatenate官方文档说明:http://pandas.pydata.org.../pandas-docs/stable/merging.html 通过apply进行数据预处理 df['A'] = df['A'].apply(str.upper) 通过去重进行数据清洗 查看一列唯一值

3.1K71

Python 数据处理:Pandas使用

: 类型 描述 二维ndarray 数据矩阵,还可以传入行标和标 由数组、列表或元组组成字典 每个序列会变成DataFrame一列。...如果没有显式指定索引,则各Series索引会被合并成结果索引 由字典组成字典 各内层字典会成为一列。...字典键或Series索引并集将会成为DataFrame标 由列表或元组组成列表 类似于“二维ndarray" 另一个DataFrame 该DataFrame索引将会被沿用,除非显式指定了其他索引...i处,并得到新Index is_monotonic 当各元素均大于等于前一个元素时,返回True is_unique 当Index没有重复值时,返回True unique 计算Ilndex唯一值数组...向[ ]传递单一元素列表,就可选择

22.6K10

Pandas-DataFrame基础知识点总结

该方法几个重要参数如下所示: 参数 描述 header 默认第一行为columns,如果指定header=None,则表明没有索引行,第一行就是数据 index_col 默认作为索引为第一列,可以设为...2、DataFrame轴概念 在DataFrame处理中经常会遇到轴概念,这里先给大家一个直观印象,我们所说axis=0即表示沿着每一列或行标签\索引值向下执行方法,axis=1即表示沿着每一行或者标签模向执行对应方法...3、DataFrame一些性质 索引、切片 我们可以根据列名选取一列返回一个Series: frame2['year'] #输出 one 2000 two 2001 three...Utah 8 9 10 11 New York 12 13 14 15 pandas提供了专门用于索引DataFrame方法,即使用ix方法进行索引,不过ix在最新版本已经被废弃了...2 Colorado 6 Utah 10 Name: three, dtype: int64 修改数据 可以使用一个标量修改DataFrame一列,此时这个标量会广播到DataFrame

4.2K50

8个Python高效数据分析技巧。

具体来说,map通过对列表每个元素执行某种操作并将其转换为新列表。 在本例,它遍历每个元素并乘以2,构成新列表。 (注意!...) [2, 4, 6, 8, 10] Filter函数接受一个列表和一条规则,就像map一样,但它通过比较每个元素和布尔过滤规则返回原始列表一个子集。...在Pandas,删除一列或在NumPy矩阵求和值时,可能会遇到Axis。...我们用删除一列(行)例子: df.drop('Column A', axis=1) df.drop('Row A', axis=0) 如果你想处理,将Axis设置为1,如果你想要处理行,将其设置为0...如果你想在Python对其进行索引,则行数下标为0,数下标为1,这很像我们如何声明轴值。 6 Concat,Merge和Join 如果您熟悉SQL,那么这些概念对你来说可能会更容易。

2.2K10

不再纠结,一文详解pandasmap、apply、applymap、groupby、agg...

2.1 map() 类似Python内建map()方法,pandasmap()方法将函数、字典索引或是一些需要接受单个输入值特别的对象与对应单个每一个元素建立联系并串行得到结果。...2.2 apply() apply()堪称pandas中最好用方法,其使用方式跟map()很像,主要传入主要参数都是接受输入返回输出。...输出多数据 有些时候我们利用apply()会遇到希望同时输出多数据情况,在apply()同时输出多时实际上返回是一个Series,这个Series每个元素是与apply()传入函数返回值顺序对应元组...可以看到,这里返回是单列结果,每个元素返回值组成元组,这时若想直接得到各分开结果,需要用到zip(*zipped)解开元组序列,从而得到分离返回值: a, b = zip(*data.apply...可以注意到虽然我们使用reset_index()将索引还原回变量,但聚合结果列名变成红色框奇怪样子,而在pandas 0.25.0以及之后版本,可以使用pd.NamedAgg()为聚合后一列赋予新名字

4.9K10

灰太狼数据世界(三)

如果我们想为这些数据添修改索引(就是数据0,1,2),可以使用index参数指定索引。...我们对照数据理解一下。dataframe里面有个属性叫index,那这个就是索引对应也是数据库索引,你也可以把它理解成主键。第二个属性是columns,这个就是一列。对应数据库表也是一列。...在DataFrame增加一列,我们可以直接给值增加一列,就和python字典里面添加元素是一样: import pandas as pd import numpy as np val = np.arange...下面我们简单介绍一下: 选择一列: data['column_name'] 选择一列前几行数据: data['columns_name'][:n] 选择多: data[['column1','column2...apply函数可以对DataFrame对象进行操作,既可以作用于一行或者一列元素,也可以作用于单个元素apply最神奇地方就是它里面可以调用函数,我们经常在apply里面写一些功能匿名函数。

2.8K30

不再纠结,一文详解pandasmap、apply、applymap、groupby、agg...

) print(data.shape) 2.1 map() 类似Python内建map()方法,pandasmap()方法将函数、字典索引或是一些需要接受单个输入值特别的对象与对应单个每一个元素建立联系并串行得到结果...2.2 apply() apply()堪称pandas中最好用方法,其使用方式跟map()很像,主要传入主要参数都是接受输入返回输出。...有些时候我们利用apply()会遇到希望同时输出多数据情况,在apply()同时输出多时实际上返回是一个Series,这个Series每个元素是与apply()传入函数返回值顺序对应元组...) 可以看到,这里返回是单列结果,每个元素返回值组成元组,这时若想直接得到各分开结果,需要用到zip(*zipped)解开元组序列,从而得到分离返回值: a, b = zip(*data.apply...reset_index()将索引还原回变量,但聚合结果列名变成红色框奇怪样子,而在pandas 0.25.0以及之后版本,可以使用pd.NamedAgg()为聚合后一列赋予新名字:

4K30
领券