def __init__(self,
	             term_doc_mat,
	             category=None,
	             not_categories=None,
	             starting_count=0.0001,
	             term_ranker=AbsoluteFrequencyRanker):
		'''
		Parameters
		----------
		term_doc_mat : TermDocMatrix
			Basis for scores
		category : str
			Category to score. Only important when finding neutral categories.
		not_categories : list
		  List of categories to score against.  If None (the default) the list
		   is the remaining
		starting_count : float
			Default 0.01. Add this count to each term seen. If zero, terms not in background counts will be removed.
		term_ranker : TermRanker
			Function to get term frequency convention_df
		'''
		self.term_doc_mat = term_doc_mat
		self.relevant_categories = []
		if category:
			self.category = category
			assert category in term_doc_mat.get_categories()
			self.relevant_categories += [category]
		else:
			self.category = None
		if not_categories == None:
			not_categories = [c for c in term_doc_mat.get_categories()
			                  if c != category]
		else:
			assert set(not_categories) - set(term_doc_mat.get_categories()) == set()
		self.relevant_categories += not_categories
		self.not_categories = not_categories
		self.starting_count = starting_count
		self.term_ranker = term_ranker(term_doc_mat)
		self.use_preset_term_frequencies = False
		self.priors = pd.Series(np.zeros(len(self.term_doc_mat.get_terms())),
		                        index=term_doc_mat.get_terms())

		Parameters
		----------
		term_doc_mat : TermDocMatrix
			Basis for scores
		category : str
			Category to score. Only important when finding neutral categories.
		not_categories : list
		  List of categories to score against.  If None (the default) the list
		   is the remaining
		starting_count : float
			Default 0.01. Add this count to each term seen. If zero, terms not in background counts will be removed.
		term_ranker : TermRanker
			Function to get term frequency convention_df
		
scattertext/PriorFactory.py