code: def _analyze(self, doc):
      text_df = (
          pd.DataFrame(
              pd.Series(
                  Counter(
                      t
                      for t in split(r"(\W)", doc.lower())
                      if t.strip()
                  )
              )
          )
          .join(self._lexicon_df)
          .dropna()
          .groupby("cat")
          .sum()
      )
      return text_df
  
file_path: scattertext/scattertext/features/FeatsFromMoralFoundationsDictionary.py
imports: import io
  import pkgutil
  from collections import Counter
  from re import split
  from sys import version_info
  import pandas
  from scattertext.features.FeatsFromSpacyDoc import FeatsFromSpacyDoc
label_desc: Use image node_id 3 for calling the FeatsFromMoralFoundationsDictionary obj's underlying member method code with example usage: obj._analyze(doc) and returns: text_df