Python - 在函数内部修改,临时内存[关闭]

问题描述 投票:0回答:0

我面临修改数据框的问题。对于人口中的每个个体,将转到函数 chromo_eval 并返回总成本。但是,当我运行“fitness_set”行时,它会返回错误的每个人的总成本。我认为原因是运行完第一个个体后,_data 并没有变回原来的状态,它一直在修改。

有什么方法可以解决这个问题,所以初始数据帧(_data)不被修改吗?

def chromo_eval(_data,TimeWindow,_chromo):
   _data=_data.copy(deep=True)
   ....
   return totalcost,

population = toolbox.population(n=num_population)

fitness_set = list(tb.map(tb.evaluate, population))
    for ind, fit in zip(population, fitness_set):
    ind.fitness.values = fit
python pandas dataframe deap
© www.soinside.com 2019 - 2024. All rights reserved.