deepy.dataset.SequentialDataset   A
last analyzed

Complexity

Total Complexity 7

Size/Duplication

Total Lines 30
Duplicated Lines 0 %
Metric Value
dl 0
loc 30
rs 10
wmc 7

4 Methods

Rating   Name   Duplication   Size   Complexity  
A __init__() 0 2 1
A _pad() 0 10 4
A pad_right() 0 5 1
A pad_left() 0 5 1
1
#!/usr/bin/env python
2
# -*- coding: utf-8 -*-
3
4
from . import BasicDataset
5
from padding import pad_dataset
6
7
class SequentialDataset(BasicDataset):
8
    """
9
    Dataset class for sequences.
10
    """
11
12
    def __init__(self, train, valid=None, test=None):
13
        super(SequentialDataset, self).__init__(train, valid, test)
14
15
    def _pad(self, side, length):
16
        """
17
        Pad sequences to given length in the left or right side.
18
        """
19
        if self._train_set:
20
            self._train_set = pad_dataset(self._train_set, side, length)
21
        if self._valid_set:
22
            self._valid_set = pad_dataset(self._valid_set, side, length)
23
        if self._test_set:
24
            self._test_set = pad_dataset(self._test_set, side, length)
25
26
    def pad_left(self, length):
27
        """
28
        Pad sequences to given length in the left side.
29
        """
30
        self._pad('left', length)
31
32
    def pad_right(self, length):
33
        """
34
        Pad sequences to given length in the left side.
35
        """
36
        self._pad('right', length)