def read_table(filename, usecols=(0, 1), sep='\t', comment='#', encoding='utf-8', skip=0):
    """Parse data files from the data directory

    Parameters
    ----------
    filename: string
        Full path to file

    usecols: list, default [0, 1]
        A list of two elements representing the columns to be parsed into a dictionary.
        The first element will be used as keys and the second as values. Defaults to
        the first two columns of `filename`.

    sep : string, default '\t'
        Field delimiter.

    comment : str, default '#'
        Indicates remainder of line should not be parsed. If found at the beginning of a line,
        the line will be ignored altogether. This parameter must be a single character.

    encoding : string, default 'utf-8'
        Encoding to use for UTF when reading/writing (ex. `utf-8`)

    skip: int, default 0
        Number of lines to skip at the beginning of the file

    Returns
    -------
    A dictionary with the same length as the number of lines in `filename`
    """

    with io.open(filename, 'r', encoding=encoding) as f:
        # skip initial lines
        for _ in range(skip):
            next(f)

        # filter comment lines
        lines = (line for line in f if not line.startswith(comment))

        d = dict()
        for line in lines:
            columns = line.split(sep)
            key = columns[usecols[0]].lower()
            value = columns[usecols[1]].rstrip('\n')
            d[key] = value
    return d