Я использую следующий код для масштабирования значений от одного интервала к другому.«output_max», «output_min» - это массивы, а также (как результат) «уклон» и «перехват».
Для большей ясности при отображении результата «scaled_outputs» я использовал pandas для создания DataFrame файла «out.npy», который я назвал «output_array».Результирующий массив "scaled_outputs", следовательно, отображается и в DataFrame, а затем сохраняется в виде файла с фрагментами.
import pandas as pd
import numpy as np
output_file = np.load("U:\\out.npy")
output_array = pd.DataFrame(output_file)
desired_upper_bound = 1
desired_lower_bound = 0
slope = (desired_upper_bound - desired_lower_bound) / (outputs_max - outputs_min)
intercept = desired_upper_bound - (slope * rounded_outputs_max)
scaled_outputs = slope * output_array + intercept
np.save("U:\\scaled_outputs.npy", scaled_outputs)
Потеряю ли я точность значений, создав DataFrame и передав его в уравнение?Было бы лучше передать массив «output_file» и создать DataFrame «scaled_outputs»?
Результат в консоли отображается с максимумом 5 десятичных знаков, поэтому я и спрашиваю.