def clean_dataframe(df):
    """
    Cleans the DataFrame passed, to make the values more readable.

    Parameter:
        df: the dataframe to clean
    Returns:
        df: the cleaned dataframe
    """
    # Function to remove extra spaces from the cell inbetween items
    def cleanDivide(cell):
        cell = cell.split(',')
        for i in range(len(cell)):
            cell[i] = cell[i].strip()
        if cell[0] == "None found":
            return ''
        return ", ".join(cell)

    # Function to remove double entries from the cell.
    def removeDouble(cell):
        cell = cell.split(', ')
        for i in range(len(cell)):
            cell[i] = cell[i][:len(cell[i]) // 2]
        return ", ".join(cell)

    # Cleaning up the dataframe
    df['Genres'] = df['Genres'].apply(cleanDivide)
    df['Genres'] = df['Genres'].apply(removeDouble)
    df['Studios'] = df['Studios'].apply(cleanDivide)
    df['Producers'] = df['Producers'].apply(cleanDivide)
    df['Licensors'] = df['Licensors'].apply(cleanDivide)
    df['Score'] = df['Score'].apply(lambda x: x[:4])
    df['Ranked'] = df['Ranked'].apply(lambda x: x[1:-99])
    df['Members'] = df['Members'].str.replace(',', '')
    df['Favorites'] = df['Favorites'].str.replace(',', '')
    df['Popularity'] = df['Popularity'].str.replace('#', '')

    return df