import csv


def read_csv_to_dictionary(csvfile, delimiter=';'):
    """Reads a csv file and returns a dictionary with the respective keys
    specified in the first row of the csv file.

    Parameters
    ----------
    csvfile : str
        The path to csv file.
    delimiter : str, optional
        The character used to separate the values. Default ``;``

    Returns
    -------
    dict
    """
    data = []
    with open(csvfile, mode='r') as infile:
        reader = csv.reader(infile, delimiter=delimiter)
        for rows in reader:
            data.append(rows)
        infile.close()
    data = zip(*data)  # transpose data
    data_dict = {}
    for col in data:
        key = col[0]
        values = list(col[1:])
        data_dict.update({key: values})
    return data_dict