def downsample(self, fraction_to_retain, random_seed, verbose=False):
random_state = random.getstate()
random.seed(random_seed)
try:
number_to_retain = \
max(int(round(float(len(self._scenarios)*fraction_to_retain))), 1)
random_list=random.sample(range(len(self._scenarios)), number_to_retain)
scenario_bundle_list = []
for i in xrange(number_to_retain):
scenario_bundle_list.append(self._scenarios[random_list[i]]._name)
if verbose:
print("Downsampling scenario tree - retained %s "
"scenarios: %s"
% (len(scenario_bundle_list),
str(scenario_bundle_list)))
self.compress(scenario_bundle_list) # do the downsampling
finally:
random.setstate(random_state)
#
# returns the root node of the scenario tree
#
评论列表
文章目录