Beispiel #1
0
 def migrate_settings(cls, settings, version):
     if (version is None or version < 2) and \
             ("limit_lower" in settings and "limit_upper" in settings):
         # v2 changed limit_lower, limit_upper to per filter limits stored
         # in a single dict
         lower = settings.pop("limit_lower")
         upper = settings.pop("limit_upper")
         settings["thresholds"] = {
             (Cells, TotalCounts): (lower, upper),
             (Cells, DetectionCount): (lower, upper),
             (Genes, TotalCounts): (lower, upper),
             (Genes, DetectionCount): (lower, upper),
             (Data, -1): (lower, upper),
         }
     if version == 2:
         thresholds = settings["thresholds"]
         c = thresholds.pop(Cells)
         g = thresholds.pop(Genes)
         d = thresholds.pop(Data)
         thresholds = {
             (Cells, TotalCounts): c,
             (Cells, DetectionCount): c,
             (Genes, TotalCounts): g,
             (Genes, DetectionCount): g,
             (Data, -1): d,
         }
         settings["thresholds"] = thresholds
Beispiel #2
0
 def migrate_settings(cls, settings, version):
     if version < 2:
         settings.pop('selected_tree_index', None)
         v1_min, v1_max = 20, 150
         v2_min, v2_max = 100, 400
         ratio = (v2_max - v2_min) / (v1_max - v1_min)
         settings['zoom'] = int(ratio * (settings['zoom'] - v1_min) + v2_min)
Beispiel #3
0
 def migrate_settings(cls, settings, version):
     if version < 2:
         settings.pop('selected_tree_index', None)
         v1_min, v1_max = 20, 150
         v2_min, v2_max = 100, 400
         ratio = (v2_max - v2_min) / (v1_max - v1_min)
         settings['zoom'] = int(ratio * (settings['zoom'] - v1_min) + v2_min)
 def migrate_to_version_2():
     settings["selected_source"] = settings.pop("selected_db_source",
                                                "")
     settings["selected_organism"] = settings.pop("selected_group", "")
     if "context_settings" in settings:
         for co in settings["context_settings"]:
             co.values["selected_genes"] = [
                 g[0] + g[1] for g in co.values["selected_genes"]
             ]
Beispiel #5
0
    def migrate_settings(cls, settings, version):
        if version is not None and version < 3:
            def st2cl(state: bool) -> Clustering:
                return Clustering.OrderedClustering if state else \
                    Clustering.None_

            rc = settings.pop("row_clustering", False)
            cc = settings.pop("col_clustering", False)
            settings["row_clustering_method"] = st2cl(rc).name
            settings["col_clustering_method"] = st2cl(cc).name
Beispiel #6
0
 def migrate_settings(cls, settings, version):
     if (version is None or version < 2) and \
             ("limit_lower" in settings and "limit_upper" in settings):
         # v2 changed limit_lower, limit_upper to per filter limits stored
         # in a single dict
         lower = settings.pop("limit_lower")
         upper = settings.pop("limit_upper")
         settings["thresholds"] = {
             Cells: (lower, upper),
             Genes: (lower, upper),
             Data: (lower, upper),
         }
Beispiel #7
0
    def migrate_settings(cls, settings, version):
        if "variance_covered" in settings:
            # Due to the error in gh-1896 the variance_covered was persisted
            # as a NaN value, causing a TypeError in the widgets `__init__`.
            vc = settings["variance_covered"]
            if isinstance(vc, numbers.Real):
                if numpy.isfinite(vc):
                    vc = int(vc)
                else:
                    vc = 100
                settings["variance_covered"] = vc
        if settings.get("ncomponents", 0) > MAX_COMPONENTS:
            settings["ncomponents"] = MAX_COMPONENTS

        # Remove old `decomposition_idx` when SVD was still included
        settings.pop("decomposition_idx", None)
Beispiel #8
0
    def migrate_settings(cls, settings, version):
        if "variance_covered" in settings:
            # Due to the error in gh-1896 the variance_covered was persisted
            # as a NaN value, causing a TypeError in the widgets `__init__`.
            vc = settings["variance_covered"]
            if isinstance(vc, numbers.Real):
                if numpy.isfinite(vc):
                    vc = int(vc)
                else:
                    vc = 100
                settings["variance_covered"] = vc
        if settings.get("ncomponents", 0) > MAX_COMPONENTS:
            settings["ncomponents"] = MAX_COMPONENTS

        # Remove old `decomposition_idx` when SVD was still included
        settings.pop("decomposition_idx", None)

        # Remove RemotePCA settings
        settings.pop("batch_size", None)
        settings.pop("address", None)
        settings.pop("auto_update", None)
Beispiel #9
0
 def migrate_settings(cls, settings, version):  # pylint: disable=redefined-outer-name
     if version is None or version < 2:
         # was stored as int indexing Methods (but offset by 1)
         default = settings.pop("default_method", 0)
         default = Methods(default + 1)
         settings["default_method_name"] = default.name