コード例 #1
0
ファイル: test_base.py プロジェクト: smoofra/pandas
    def test_add(self):
        result = self.container + (1, 2, 3)
        expected = FrozenList(self.lst + [1, 2, 3])
        self.check_result(result, expected)

        result = (1, 2, 3) + self.container
        expected = FrozenList([1, 2, 3] + self.lst)
        self.check_result(result, expected)
コード例 #2
0
ファイル: test_base.py プロジェクト: smoofra/pandas
class TestFrozenList(CheckImmutable, CheckStringMixin, tm.TestCase):
    mutable_methods = ('extend', 'pop', 'remove', 'insert')
    unicode_container = FrozenList([u("\u05d0"), u("\u05d1"), "c"])

    def setUp(self):
        self.lst = [1, 2, 3, 4, 5]
        self.container = FrozenList(self.lst)
        self.klass = FrozenList

    def test_add(self):
        result = self.container + (1, 2, 3)
        expected = FrozenList(self.lst + [1, 2, 3])
        self.check_result(result, expected)

        result = (1, 2, 3) + self.container
        expected = FrozenList([1, 2, 3] + self.lst)
        self.check_result(result, expected)

    def test_inplace(self):
        q = r = self.container
        q += [5]
        self.check_result(q, self.lst + [5])
        # other shouldn't be mutated
        self.check_result(r, self.lst)
コード例 #3
0
ファイル: test_base.py プロジェクト: smoofra/pandas
 def setUp(self):
     self.lst = [1, 2, 3, 4, 5]
     self.container = FrozenList(self.lst)
     self.klass = FrozenList
コード例 #4
0
ファイル: internals.py プロジェクト: gitter-badger/metacsv
    def parse_coords_definition(coords=None):
        ''' Validate coords to test for cyclic graph '''
        if coords == None:
            return None, None, None

        if isinstance(coords, string_types):
            return OrderedDict([(coords, None)]), FrozenList([coords]), {
                coords: set([coords])
            }

        elif not has_iterkeys(coords):
            if isinstance(coords, Coordinates):
                coords = coords._coords
            coords = OrderedDict(
                list(zip(list(coords), [None for _ in range(len(coords))])))
            return coords, FrozenList(
                coords.keys()), {c: set([c])
                                 for c in coords.keys()}

        base_coords = []
        dependencies = OrderedDict([])
        base_deps = {}
        visited = set()

        def find_coord_dependencies(coord):
            if coord in visited:
                if coord not in dependencies:
                    raise GraphIsCyclicError
                return

            deps = coords.pop(coord)

            if deps is None:
                base_coords.append(coord)
                dependencies[coord] = None
                base_deps[coord] = set([coord])
                visited.add(coord)

            elif isinstance(deps, string_types):
                visited.add(coord)
                find_coord_dependencies(deps)
                dependencies[coord] = set([deps])
                base_deps[coord] = base_deps[deps]

            else:
                visited.add(coord)
                dependencies[coord] = set()
                base_deps[coord] = set()
                for ele in deps:
                    find_coord_dependencies(ele)
                    dependencies[coord].add(ele)
                    base_deps[coord] |= base_deps[ele]

        while len(coords) > 0:
            find_coord_dependencies(next(iterkeys(coords)))

        # Convert from sets to lists
        for k, v in dependencies.items():
            if v is not None:
                dependencies[k] = list(v)

        return dependencies, FrozenList(base_coords), base_deps
コード例 #5
0
from sklearn.metrics.pairwise import pairwise_distances
from tqdm import tqdm

from config import ROOT_DIR


class LionClasses:
    ADULT_MALES = 0
    SUBADULT_MALES = 1
    ADULT_FEMALES = 2
    JUVENILES = 3
    PUPS = 4
    NUM_CLASSES = 5


CLASS_NAMES = FrozenList(['adult_males', 'subadult_males', 'adult_females', 'juveniles', 'pups'])


def coords_df_to_dict(coords_df_):
    images_info = defaultdict(list)
    for row in coords_df_.itertuples():
        item = dict(cls=row.cls, row=row.row, col=row.col)
        images_info[row.tid].append(item)
    return images_info


def hardcode_coords(coords_df_):
    coords_df_ = coords_df_.copy()
    coords_df_.loc[(coords_df_['tid'] == 691) & (coords_df_['cls'] == 0), 'row'] = 105
    coords_df_.loc[(coords_df_['tid'] == 691) & (coords_df_['cls'] == 0), 'col'] = 1550
    return coords_df_