def ica(self, col, nc=None, load_fit=None):
if nc:
self.do_ica = FastICA(n_components=nc)
self.do_ica.fit(self.df[col])
if load_fit: # use this to load a previous fit rather than fit the current data
self.do_ica = load_fit
ica_result = self.do_ica.transform(self.df[col])
for i in list(range(1, self.do_ica.n_components + 1)):
self.df[('ICA', i)] = ica_result[:, i - 1]
评论列表
文章目录