如何将索引传递给函数Python Pandas

2024-06-28 19:00:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图将一个索引从df传递到我的函数中,这样我的函数就可以遍历df的所有行,并在名为“TDNumber”的新列中提供一个int输出。在

这是密码

 def createTdnumber(onedfindex):
    header.index    
    maski = header.index < onedfindex 
    finder = header[maski]
    tdnumber = max(finder.index)
    return tdnumber

df['TDNumber'] = df.index.apply(createTdnumber())

如下所示,掩码应接收到一个数字,如227 227是数据框索引应用对函数

^{pr2}$

此代码生成错误“Int64Index”对象没有属性“apply”

对于“Int64Index”,如何一次将这些数字传递给函数?在

header.index 

我的输出是

 Int64Index([0, 226, 470, 659, 863, 1108], dtype='int64')

运行时从shx2解决方案

df.index.to_series()

输出为:

1          1
2          2
3          3
4          4
5          5
6          6
7          7
8          8
9          9
227      227
228      228
229      229
230      230
471      471
472      472
473      473
474      474
475      475
476      476

Tags: 函数密码dfindexfinder数字intheader
1条回答
网友
1楼 · 发布于 2024-06-28 19:00:07

索引类型没有apply方法,但是Series有。在

要将函数应用于索引,可以先使用其to_series方法将其转换为序列:

df['TDNumber'] = df.index.to_series().apply(createTdnumber)

相关问题 更多 >