Python 如何计算应用函数中的行的迭代次数
如果我使用apply对数据框中的每一行循环一个函数,如下所示:Python 如何计算应用函数中的行的迭代次数,python,pandas,Python,Pandas,如果我使用apply对数据框中的每一行循环一个函数,如下所示: def my_function(): return "True" df['Result'] = df.apply(lambda row: my_function(row), axis = 1) 如何计算迭代次数以跟踪进度?这是一个难题。这在某种程度上取决于函数的作用。特别是,如果您的功能可以广播。如果是这样的话,我相信熊猫会这么做。在这种情况下,没有明显的“循环计数器”,即进度指示器 另一方面,如果您想用一些复杂的不可
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)
您只需打印索引,直到代码被执行为止。在您的函数中,您只需获得正在使用的当前行的索引,该索引应与当前迭代相关。或者,您可以只在数据帧上滚动,在这种情况下,您将知道您当前在哪一行。其他可能的解决方案是,但可能需要