项目介绍:TextDescriptives
TextDescriptives 是一个专为处理文本数据而设计的 Python 库。它利用 spaCy v.3 的管道组件和扩展,帮助用户计算多种文本指标。这些指标可以在文本分析和自然语言处理任务中提供有价值的见解。
安装指南
用户可以通过简单的一行命令来安装 TextDescriptives:
pip install textdescriptives
功能亮点
TextDescriptives 现在拥有一个基于 Web 的应用程序,无需编写代码即可提取和下载指标。此外,版本 2.0 引入了全新的 API 和组件,以及更新的文档和教程。新的 coherence
组件可以计算句子之间的语义连贯性。
快速上手
TextDescriptives 提供了一个简便的方法来快速提取所需的指标。用户可以通过以下代码查看可用的方法:
import textdescriptives as td
td.get_valid_metrics()
# 输出为:{'quality', 'readability', 'all', 'descriptive_stats', 'dependency_distance', 'pos_proportions', 'information_theory', 'coherence'}
用户可以通过指定 spacy_model
参数来选择使用哪个 spaCy 模型。默认情况下,程序会根据 lang
参数自动下载一个合适的模型。
以下是如何使用 extract_metrics
提取文本指标的示例:
import textdescriptives as td
text = "The world is changed. I feel it in the water. I feel it in the earth. I smell it in the air. Much that once was is lost, for none now live who remember it."
# 自动下载相关模型(如 `en_core_web_lg`)并提取所有指标
df = td.extract_metrics(text=text, lang="en", metrics=None)
# 指定使用的 spaCy 模型和要提取的指标
df = td.extract_metrics(text=text, spacy_model="en_core_web_lg", metrics=["readability", "coherence"])
与 spaCy 集成
TextDescriptives 可以与其他 spaCy 管道轻松集成。用户可以使用标准的 spaCy 语法将组件添加到管道中。可用的组件包括 descriptive_stats
、readability
、dependency_distance
、pos_proportions
、coherence
和 quality
,组件名称前需要加上 textdescriptives/
前缀。
以下是如何将所有组件添加到管道的示例:
import spacy
import textdescriptives as td
# 加载您喜爱的 spaCy 模型(请先使用 `python -m spacy download en_core_web_sm` 安装)
nlp = spacy.load("en_core_web_sm")
nlp.add_pipe("textdescriptives/all")
doc = nlp("The world is changed. I feel it in the water. I feel it in the earth. I smell it in the air. Much that once was is lost, for none now live who remember it.")
# 访问部分指标值
doc._.readability
doc._.token_length
TextDescriptives 提供了方便的函数,可以将 Doc
对象中的指标提取到 Pandas DataFrame 或字典中:
td.extract_dict(doc)
td.extract_df(doc)
文档
TextDescriptives 提供了详尽的文档和一系列 Jupyter notebook 教程。所有的教程都位于 docs/tutorials
文件夹,也可以在官方文档网站上找到。
- 入门指南:如何使用 TextDescriptives 及其功能的指导。
- 演示:TextDescriptives 的实时演示。
- 教程:详细介绍如何充分利用 TextDescriptives 的教程。
- 新闻和更新日志:新增功能、变更和版本历史。
- API 参考:TextDescriptives API 的详细参考,包括功能文档。
- 论文:TextDescriptives 论文的预印本。
TextDescriptives 是一个强大的文本分析工具,适用于希望深入挖掘文本数据的研究人员和数据科学家。它既适合新手,也为高级用户提供了全面的功能及灵活性。