Extract a bag-of-words for a corpus of Twitter lists pertaining to a Twitter user.

    Inputs: - twitter_list_corpus: A python list of Twitter lists in json format.
            - lemmatizing: A string containing one of the following: "porter", "snowball" or "wordnet".

    Output: - bag_of_words: A bag-of-words in python dictionary format.
            - lemma_to_keywordbag_total: Aggregated python dictionary that maps stems/lemmas to original topic keywords.

def user_twitter_list_bag_of_words(twitter_list_corpus,
                                   sent_tokenize, _treebank_word_tokenize,
                                   tagger, lemmatizer, lemmatize, stopset,
                                   first_cap_re, all_cap_re, digits_punctuation_whitespace_re,
                                   pos_set):
    """
    Extract a bag-of-words for a corpus of Twitter lists pertaining to a Twitter user.

    Inputs: - twitter_list_corpus: A python list of Twitter lists in json format.
            - lemmatizing: A string containing one of the following: "porter", "snowball" or "wordnet".

    Output: - bag_of_words: A bag-of-words in python dictionary format.
            - lemma_to_keywordbag_total: Aggregated python dictionary that maps stems/lemmas to original topic keywords.
    """
    # Extract a bag-of-words from a list of Twitter lists.
    # May result in empty sets
    list_of_keyword_sets, list_of_lemma_to_keywordbags = clean_list_of_twitter_list(twitter_list_corpus,
                                                                                    sent_tokenize, _treebank_word_tokenize,
                                                                                    tagger, lemmatizer, lemmatize, stopset,
                                                                                    first_cap_re, all_cap_re, digits_punctuation_whitespace_re,
                                                                                    pos_set)

    # Reduce keyword sets.
    bag_of_words = reduce_list_of_bags_of_words(list_of_keyword_sets)

    # Reduce lemma to keywordbag maps.
    lemma_to_keywordbag_total = defaultdict(lambda: defaultdict(int))
    for lemma_to_keywordbag in list_of_lemma_to_keywordbags:
        for lemma, keywordbag in lemma_to_keywordbag.items():
            for keyword, multiplicity in keywordbag.items():
                lemma_to_keywordbag_total[lemma][keyword] += multiplicity

    return bag_of_words, lemma_to_keywordbag_total