main
ifiguero 2025-03-16 04:32:15 -03:00
parent 7852773203
commit a3a4bd9238
1 changed files with 27 additions and 26 deletions

View File

@ -306,6 +306,33 @@ class GasSensorDataLoader:
return self.dataset[ws]
def create_conv1d_dataset(self, measurament, r, l, window):
X_data = self.scaled_data[measurament]['data'].iloc[r:l]
Y_value = np.array([[self.scaled_data[measurament]['label'][key] for key in self.target_list]])
G_value = self.scaled_data[measurament]['sampleId']
total_samples = X_data.shape[0] - window + 1
sample_size = self.min_sample - window + 1
if sample_size > total_samples:
self.logger.warn(f"sample_size ({sample_size}) exceeds available samples ({total_samples}). Using available samples.")
sample_size = total_samples
random_indices = np.random.choice(total_samples, size=sample_size, replace=False)
g_sample = np.zeros((sample_size, 1))
y_sample = np.zeros((sample_size, self.target_len))
x_samples = np.zeros((sample_size, window, self.data_channels))
for i, index in enumerate(random_indices):
x_samples[i] = X_data.iloc[index:index + window].values
y_sample[i] = Y_value
g_sample[i] = G_value
return x_samples, y_sample, g_sample
def load_dataset_xboost(self):
self.logger.info(f"Requested sample with threshold {self.threshold} for xboost")
@ -381,32 +408,6 @@ class GasSensorDataLoader:
return x_samples, y_sample, g_sample
def create_conv1d_dataset(self, measurament, r, l, window):
X_data = self.scaled_data[measurament]['data'].iloc[r:l]
Y_value = np.array([[self.scaled_data[measurament]['label'][key] for key in self.target_list]])
G_value = self.scaled_data[measurament]['sampleId']
total_samples = X_data.shape[0] - window + 1
sample_size = self.min_sample - window + 1
if sample_size > total_samples:
self.logger.warn(f"sample_size ({sample_size}) exceeds available samples ({total_samples}). Using available samples.")
sample_size = total_samples
random_indices = np.random.choice(total_samples, size=sample_size, replace=False)
g_sample = np.zeros((sample_size, 1))
y_sample = np.zeros((sample_size, self.target_len))
x_samples = np.zeros((sample_size, window, self.data_channels))
for i, index in enumerate(random_indices):
x_samples[i] = X_data.iloc[index:index + window].values
y_sample[i] = Y_value
g_sample[i] = G_value
return x_samples, y_sample, g_sample
def stats(self):
channel_columns = {}