使用不同的变量以相同的速率遍历循环



我正在尝试弄清楚如何同时遍历循环。不确定我的措辞是否正确。

例如,我需要将第 1 列与两个数据帧的差异存储在Calibrated Power 0 [dBm]或 df 的第 4 列中。我需要将第 2 列存储在Calibrated Power 10 [dBm]列中。目前,相同的数据正在复制到 df 的第 4-6 列

attenuator_power = [0, 10, 30]
for i in range(1, 3):
ydata_sans_att = df_sans_attenuator.iloc[:, i]
ydata_df = df.iloc[:, i]
for j in attenuator_power:
df['Calibrated Power {} [dBm]'.format(j)] = ydata_df - ydata_sans_att

这是您配对它们的方式:

for i, j in zip(range(1,3), attenuator_power):
ydata_sans_att = df_sans_attenuator.iloc[:, i]
ydata_df = df.iloc[:, i]
df['Calibrated Power {} [dBm]'.format(j)] = ydata_df - ydata_sans_att  

@mauve已经给出了一个很好的答案,但这是另一种选择:

for i, j in enumerate(attenuator_power, 1):
ydata_sans_att = df_sans_attenuator.iloc[:, i]
ydata_df = df.iloc[:, i]
df['Calibrated Power {} [dBm]'.format(j)] = ydata_df - ydata_sans_att  

最新更新