Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何计算应用函数中的行的迭代次数_Python_Pandas - Fatal编程技术网

Python 如何计算应用函数中的行的迭代次数

Python 如何计算应用函数中的行的迭代次数,python,pandas,Python,Pandas,如果我使用apply对数据框中的每一行循环一个函数,如下所示: def my_function(): return "True" df['Result'] = df.apply(lambda row: my_function(row), axis = 1) 如何计算迭代次数以跟踪进度?这是一个难题。这在某种程度上取决于函数的作用。特别是,如果您的功能可以广播。如果是这样的话,我相信熊猫会这么做。在这种情况下,没有明显的“循环计数器”,即进度指示器 另一方面,如果您想用一些复杂的不可

如果我使用apply对数据框中的每一行循环一个函数,如下所示:

def my_function():
    return "True"


df['Result'] = df.apply(lambda row: my_function(row), axis = 1)

如何计算迭代次数以跟踪进度?这是一个难题。这在某种程度上取决于函数的作用。特别是,如果您的功能可以广播。如果是这样的话,我相信熊猫会这么做。在这种情况下,没有明显的“循环计数器”,即进度指示器


另一方面,如果您想用一些复杂的不可广播的操作进行线性传递,那么您最好显式地编写for循环。

我想出了一个解决方法,如果您使用的是数据帧,那么可以添加这样的计数器

input_df['counter']=0

for i,row in input_df.iterrows():
    input_df['counter'][i]= i+1
您的申请声明:-

input_df.apply(YourFunction,axis=1)
您的呼叫功能:-

def YourFunction(row):
    print(row['counter'])

我也面临同样的问题

df['index'] = df.index 
def my_function(count):
    if count%5==0:
        print(count)
    return "True"


df['Result'] = df.apply(lambda row: my_function(row.index), axis = 1)

您只需打印索引,直到代码被执行为止。

在您的函数中,您只需获得正在使用的当前行的索引,该索引应与当前迭代相关。或者,您可以只在数据帧上滚动,在这种情况下,您将知道您当前在哪一行。其他可能的解决方案是,但可能需要