Metadata-Version: 2.1
Name: cwordtm
Version: 0.6.2
Summary: CWordTM: Towards a Topic Modeling Toolkit from Low-Code to Pro-Code
Author: Dr. Johnny CHENG
Author-email: <drjohnnycheng@gmail.com>
Project-URL: Documentation, https://cwordtm.readthedocs.io
Project-URL: GitHub Repository, https://github.com/drjohnnycheng/cwordtm
Keywords: topic modeling,BERTopic,LDA,NMF,NLP,Holy Bible,Chinese text preprocessing,pre-packaging,low-code,pro-code,meta programming,CWordTM
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: Information Technology
Classifier: Intended Audience :: Religion
Classifier: Intended Audience :: Science/Research
Classifier: Programming Language :: Python :: 3.10
Classifier: Operating System :: OS Independent
License-File: LICENSE.txt
Requires-Dist: numpy
Requires-Dist: pandas
Requires-Dist: importlib-resources
Requires-Dist: regex
Requires-Dist: nltk
Requires-Dist: matplotlib
Requires-Dist: wordcloud
Requires-Dist: pillow
Requires-Dist: jieba
Requires-Dist: gensim
Requires-Dist: pyLDAvis
Requires-Dist: bertopic
Requires-Dist: transformers
Requires-Dist: spacy
Requires-Dist: seaborn
Requires-Dist: wikipedia
Requires-Dist: scipy
Requires-Dist: importlib
Requires-Dist: networkx
Requires-Dist: plotly
Requires-Dist: IPython
Requires-Dist: scikit-learn
Requires-Dist: torch

CWordTM Package (cwordtm 0.6.2)
===============================

A Topic Modeling Toolkit from Low-code to Pro-code

Installation
------------

.. code:: shell

   $ pip install cwordtm

Usage
-----

``cwordtm`` can be used to perform some NLP pre-processing tasks, text
exploration, including Chinese one, text visualization (word cloud), and
topic modeling (BERTopic, LDA and NMF) as follows:

.. code:: python

   from cwordtm import meta, util, ta, tm, viz, pivot, quot

version Submodule
~~~~~~~~~~~~~~~~~

Provides some version information.

.. code:: python

   import cwordtm
   print(cwordtm.__version__)

meta Submodule
~~~~~~~~~~~~~~

Provides extracting source code of ``cwordtm`` module and adding timing and code-showing features
to all functions of the module.

.. code:: python

   print(meta.get_module_info())

   print(meta.get_submodule_info('viz', detailed=True))


quot Submodule
~~~~~~~~~~~~~~

Provides functions to extract the quotation source Scripture in OT based on the presribed NT Scripture.

.. code:: python

   cdf = util.load_word('cuv.csv')
   crom8 = util.extract2(cdf, 'Rom 8')
   
   quot.show_quot(crom8, lang='chi')

pivot Submodule
~~~~~~~~~~~~~~~

Provides a pivot table of the prescribed text.

.. code:: python

   cdf = util.load_word('cuv.csv')

   pivot.stat(cdf, chi=True)

ta Submodule
~~~~~~~~~~~~

Provides text analytics functions, including extracting the summarization of the prescribed text.

.. code:: python

   cdf = util.load_word('cuv.csv')
   crom8 = util.extract2(cdf, 'Rom 8')

   ta.summary_chi(crom8)

tm Submodule
~~~~~~~~~~~~~

Provides text modeling functions, including LDA, NMF and BERTopics modeling.

.. code:: python

   lda = tm.lda_process("web.csv", eval=True, timing=True)

   nmf = tm.nmf_process("web.csv", eval=True, code=1)

   btm = tm.btm_process("cuv.csv", chi=True, cat='ot', eval=True)

   btm = tm.btm_process("cuv.csv", chi=True, cat='nt', eval=True, code=2)

util Submodule
~~~~~~~~~~~~~~

Provides loading text and text preprocessing functions.

.. code:: python

   df = util.load_word()
   cdf = util.load_word('cuv.csv')

   df.head()
   cdf.head()

   rom8 = util.extract2(df, 'Rom 8')
   crom8 = util.extract2(cdf, 'Rom 8')

viz Submodule
~~~~~~~~~~~~~

Wordcloud plotting from the prescribed text.

.. code:: python

   cdf = util.load_word('cuv.csv')

   viz.chi_wordcloud(cdf)

Demo
----

Usage demo file with output:

#. On BBC News: `CWordTM_BBC.pdf <https://github.com/drjohnnycheng/CWordTM/blob/main/Demo/CWordTM_BBC.pdf>`_

#. On Chinese Bible (CUV): `CWordTM_CUV.pdf <https://github.com/drjohnnycheng/CWordTM/blob/main/Demo/CWordTM_CUV.pdf>`_

Contributing
------------

Interested in contributing? Check out the contributing guidelines.
Please note that this project is released with a Code of Conduct. By
contributing to this project, you agree to abide by its terms.

License
-------

``cwordtm`` was created by Dr. Johnny Cheng. It is licensed under the terms
of the MIT license.

Credits
-------

``cwordtm`` was created under the guidance of Jehovah, the Almighty God.
