我需要一些帮助重构代码,任何帮助将不胜感激。
我创建了多个新的数据框列,如下所示:
input_1 = 1
f = (x/y-x/y*np.exp(-y*input_1)).mean(axis=0)
df['input_1'] = np.asarray(f)
df['calc_1'] = (df['input_1']+1) * df['some_value']
input_2 = 2
f = (x/y-x/y*np.exp(-y*input_2)).mean(axis=0)
df['input_2'] = np.asarray(f)
df['calc_2'] = (df['input_2']+1) * df['some_value']
etc.
我想重构上面的代码,因为上面的方法很着急,而且很难看。
这是我走了多远:
results = []
input = list(range(1,25))
for i in input:
results.append((x/y-x/y*np.exp(-y*i)).mean(axis=0))
results = np.asarray(results)
给我带来一些问题的步骤是,像我在上面的“丑陋”版本中所做的那样,为每个输入在df中创建并填充一个新列,但是我不想手动插入每个新列,而是想编写一个-loop一次执行。
示例:
for array in results[range(0,len(input))]:
...
谢谢!