diff --git a/pes_to_spec/model.py b/pes_to_spec/model.py index e367349f9da046f8c006ddf8bfa48561d4002779..ee8088ca120e677bbc0ff69cb4c6206df50c1e00 100644 --- a/pes_to_spec/model.py +++ b/pes_to_spec/model.py @@ -1238,6 +1238,8 @@ class Model(TransformerMixin, BaseEstimator): for channel in self.get_channels(): B, P, _ = low_res_selected_dict[channel].shape print(f"Calculate PCA on {channel}") + pca_max = min(self.channel_pca[channel].n_components_, low_res_selected_dict[channel].shape[0]) + self.channel_pca[channel].set_params(n_components=pca_max) low_pca = self.channel_pca[channel].fit_transform(low_res_selected_dict[channel].reshape(B*P, -1)) self.ood[channel].fit(low_pca)