code: def test_lime_text_tabular_equal_random_state(self):
      categories = ["alt.atheism", "soc.religion.christian"]
      newsgroups_train = fetch_20newsgroups(
          subset="train", categories=categories
      )
      newsgroups_test = fetch_20newsgroups(
          subset="test", categories=categories
      )
      class_names = ["atheism", "christian"]
      vectorizer = TfidfVectorizer(lowercase=False)
      train_vectors = vectorizer.fit_transform(newsgroups_train.data)
      test_vectors = vectorizer.transform(newsgroups_test.data)
      nb = MultinomialNB(alpha=0.01)
      nb.fit(train_vectors, newsgroups_train.target)
      pred = nb.predict(test_vectors)
      f1_score(newsgroups_test.target, pred, average="weighted")
      c = make_pipeline(vectorizer, nb)
  
      explainer = LimeTextExplainer(
          class_names=class_names, random_state=10
      )
      exp_1 = explainer.explain_instance(
          newsgroups_test.data[83], c.predict_proba, num_features=6
      )
  
      explainer = LimeTextExplainer(
          class_names=class_names, random_state=10
      )
      exp_2 = explainer.explain_instance(
          newsgroups_test.data[83], c.predict_proba, num_features=6
      )
  
      self.assertTrue(exp_1.as_map() == exp_2.as_map())
  
imports: import re
  import unittest
  import sklearn
  from sklearn.datasets import fetch_20newsgroups
  from sklearn.feature_extraction.text import TfidfVectorizer
  from sklearn.metrics import f1_score
  from sklearn.naive_bayes import MultinomialNB
  from sklearn.pipeline import make_pipeline
  import numpy
  from lime.lime_text import LimeTextExplainer
  from lime.lime_text import IndexedCharacters, IndexedString
label_desc: Use image node_id 2 for calling the TestLimeText obj's underlying member method code with example usage: obj.test_lime_text_tabular_equal_random_state() without return types