在这种情况下,重塑 DataFrame 可能是有意义的。因此,您不必一次选择两列,而是有一个 DataFrame,其中两列最终代表您的测量值。
首先,您制作一个 DataFrame 列表,其中每个只有一个 Time 和 Pmpp 列:
dfs = []
for i in range(1,97):
tmp = df[['Time{0}'.format(i),'Pmpp{0}'.format(i)]]
tmp.columns = ['Time', 'Pmpp'] # Standardize column names
tmp['n'] = i # Remember measurement number
dfs.append(tmp) # Keep with our cleaned dataframes
然后你可以将它们连接到一个新的 DataFrame 中。那有三列。
new_df = pd.concat(dfs, ignore_index=True, sort=False)
对于您的数据,这应该是一个更易于管理的形状。
>>> new_df.columns
[n, Time, Pmpp]
现在您可以遍历此 DataFrame 中的行并获取预期输出的值
for i, row in new_df.iterrows():
print(i, row.n, row.Time, row.Psmpp)
它还将使使用其余的 pandas 来分析您的数据变得更加容易。
new_df.Pmpp.mean()
new_df.describe()