def calcRegularizedGrangerCausality(self, pcaContribution, eta_xtkm, eta_xt, eta_ytkm): if (len(self.Xt) == 0): print "サンプルがありません" return False pca = PCAApplier(pcaContribution) import copy self.Xt = copy.deepcopy(pca.applyPCA(self.Xt)) self.Xtkm = copy.deepcopy(pca.applyPCA(self.Xtkm)) self.Ytkm = copy.deepcopy(pca.applyPCA(self.Ytkm)) # self.Xt = copy.deepcopy(pca.applyKernelPCA(self.Xt)) # self.Xtkm = copy.deepcopy(pca.applyKernelPCA(self.Xtkm)) # self.Ytkm = copy.deepcopy(pca.applyKernelPCA(self.Ytkm)) eigen_values = self.calcEquation21(eta_xtkm, eta_xt, eta_ytkm) eigen_value = max(eigen_values) if eigen_value == None: print "固有値が計算出来ません" return False return (np.log2(1 / (1 - eigen_value)) * 0.5).real