コード例 #1
0
    def analyze_clustering(cls, separated_decomposed_clusters, distance_matrix,
                           analysis):
        """ 
        Performs the overlap analysis of a clustering (calculates global measurements).
        """
        analysis["total_num_clusters"] = 0
        analysis["total_num_elements"] = 0
        analysis["overlap"] = OverlapCalculator.calculate_clustering_overlap(
            mergeSeparatedClusters(separated_decomposed_clusters),
            distance_matrix)
        analysis[
            "mixed_overlap"] = OverlapCalculator.calculate_clustering_overlap(
                mergeSeparatedClusters(
                    {"mixed": separated_decomposed_clusters["mixed"]}),
                distance_matrix)

        for cluster_type in separated_decomposed_clusters:
            analysis["num_" + cluster_type] = len(
                separated_decomposed_clusters[cluster_type])
            analysis["total_num_clusters"] += analysis["num_" + cluster_type]
            analysis["num_" + cluster_type + "_elements"] = numpy.sum([
                len(
                    getAllElements(
                        separated_decomposed_clusters[cluster_type][dc_id]))
                for dc_id in separated_decomposed_clusters[cluster_type]
            ])
            analysis["total_num_elements"] += analysis["num_" + cluster_type +
                                                       "_elements"]
コード例 #2
0
 def analyze_clustering(cls, separated_decomposed_clusters, distance_matrix, analysis):
     """ 
     Performs the overlap analysis of a clustering (calculates global measurements).
     """
     analysis["total_num_clusters"] = 0
     analysis["total_num_elements"] = 0
     analysis["overlap"] = OverlapCalculator.calculate_clustering_overlap(mergeSeparatedClusters(separated_decomposed_clusters), distance_matrix)
     analysis["mixed_overlap"] = OverlapCalculator.calculate_clustering_overlap(mergeSeparatedClusters({"mixed":separated_decomposed_clusters["mixed"]}), distance_matrix)
    
     for cluster_type in separated_decomposed_clusters:
         analysis["num_" + cluster_type] = len(separated_decomposed_clusters[cluster_type])
         analysis["total_num_clusters"] += analysis["num_" + cluster_type]
         analysis["num_" + cluster_type + "_elements"] = numpy.sum([len(getAllElements(separated_decomposed_clusters[cluster_type][dc_id])) for dc_id in separated_decomposed_clusters[cluster_type]])
         analysis["total_num_elements"] += analysis["num_" + cluster_type + "_elements"]
コード例 #3
0
ファイル: comparator.py プロジェクト: migonsu/pyProCT
 def analyze_clustering(cls, separated_decomposed_clusters, distance_matrix, analysis):
     analysis["total_num_clusters"] = 0
     analysis["total_num_elements"] = 0
     analysis["overlap"] = OverlapCalculator.calculate_global_overlap(mergeSeparatedClusters(separated_decomposed_clusters), distance_matrix, 2, 1)
     for cluster_type in separated_decomposed_clusters:
         analysis["num_" + cluster_type] = len(separated_decomposed_clusters[cluster_type])
         analysis["total_num_clusters"] += analysis["num_" + cluster_type]
         analysis["num_" + cluster_type + "_elements"] = numpy.sum([len(getAllElements(separated_decomposed_clusters[cluster_type][dc_id])) for dc_id in separated_decomposed_clusters[cluster_type]])
         analysis["total_num_elements"] += analysis["num_" + cluster_type + "_elements"]
     return cluster_type
コード例 #4
0
    def test_mergeSeparatedClusters(self):
        separated_decomposed_clusters = {
            'mixed': {
                      '1': {
                            'traj_A': [3],
                            'traj_B': [8, 10]
                            },
                      '2': {
                            'traj_A': [4],
                            'traj_B': [14, 15]
                            }
                      },
            'pure': {
                     '0': {
                           'traj_A': [0, 1, 2]
                           },
                     '3': {
                           'traj_A': [5, 6]
                           },
                     '4': {
                           'traj_B': [9, 11, 12, 13, 7]
                           }
                     }
        }

        expected = [{
                        'traj_A': [3],
                        'traj_B': [8, 10]
                    },
                   {
                        'traj_A': [4],
                        'traj_B': [14, 15]
                    },
                    {
                       'traj_A': [0, 1, 2]
                    },
                    {
                       'traj_A': [5, 6]
                    },
                    {
                       'traj_B': [9, 11, 12, 13, 7]
                    }
                  ]

        self.assertItemsEqual(expected, mergeSeparatedClusters(separated_decomposed_clusters))
コード例 #5
0
ファイル: comparator.py プロジェクト: gabocic/python
 def analyze_clustering(cls, separated_decomposed_clusters, distance_matrix,
                        analysis):
     analysis["total_num_clusters"] = 0
     analysis["total_num_elements"] = 0
     analysis["overlap"] = OverlapCalculator.calculate_global_overlap(
         mergeSeparatedClusters(separated_decomposed_clusters),
         distance_matrix, 2, 1)
     for cluster_type in separated_decomposed_clusters:
         analysis["num_" + cluster_type] = len(
             separated_decomposed_clusters[cluster_type])
         analysis["total_num_clusters"] += analysis["num_" + cluster_type]
         analysis["num_" + cluster_type + "_elements"] = numpy.sum([
             len(
                 getAllElements(
                     separated_decomposed_clusters[cluster_type][dc_id]))
             for dc_id in separated_decomposed_clusters[cluster_type]
         ])
         analysis["total_num_elements"] += analysis["num_" + cluster_type +
                                                    "_elements"]
     return cluster_type