我需要将for循环转换为一组函数,以更快地循环数据。它在数据帧中循环并减去值。我曾想过映射数据帧,但它对我来说不是最清晰的概念,我可以使用提供的任何帮助
for nd in wnkd['days'].unique():
for ld in lps['level'].unique():
nmrtr = []
for ty in types:
try:
nmrtr.append((sum(wnkd.loc[(wnkd['level']== ld) & (wnkd['typs'] == ty) & (wnkd['data_set'] == 'rules'),'FRQ'].values)-(
sum(wnkd.loc[(wnkd['level']== ld) & (wnkd['typs']== ty ) & (wnkd['data_set'] == 'actual'), 'FRQ']))))
except (KeyError,IndexError) as e:
nmrtr.append(0)
print(nmrtr,ld)
nmrtr.append(ld)
nmrtr.append(nd)
try/except已就位,因为如果for循环的此部分中不存在某个值,则该值可能位于另一部分中。例如,当ld为3且类型为car时,可能没有任何值,但当ld为4且类型为car时,可能有一个值。目标是按周日期(nd)、级别(ld)和类型(ty)对数据的每个部分进行循环,以比较两个不同数据集的值。FRQ是指通过对原始数据集进行分组而生成的频率。还要注意的是,仅仅因为实际值为nd=3/1、level=4和type=car并不意味着规则将具有相同的类型。规则将具有相同的nd和级别,但类型可能有所不同。我想知道这些类型的变化有多频繁
目前没有回答
相关问题 更多 >
编程相关推荐