我有一个带有三个for循环的函数。该功能有效,但速度非常慢。我能够对一个for循环进行矢量化处理,但是想知道是否可以将另一个for循环集成到矢量化处理中,或者是否有其他方法可以提高效率。
这是for循环:
def getscore(df,df_out):
for bait in df.columns:
for tech in df_out:
df_out[tech] = pd.Series(index = df_out.index, data = [int(df.loc[cust_id,bait]) * int(df_pim.loc[bait,tech]) for cust_id in df_out.index])
该函数的操作不是很关键,但是我想看看是否有一种方法可以消除for循环并将它们集成到向量行中。基本上,我需要代码来遍历cust_id
,bait
和tech
。
编辑:XY问题澄清
我有三个数据框-我在df_out中获取一个值的列和索引,并将其替换为来自其他两个数据框的两个值的乘积。我用df_out.loc[cust_id,tech]
和df.loc[cust_id,bait]
的乘积代替了df_pim.loc[bait,tech]
的值。我需要遍历每个cust_id
,bait
和tech
。