全部版块 我的主页
论坛 提问 悬赏 求职 新闻 读书 功能一区 经管文库(原现金交易版)
522 4
2024-07-15
Python中英文文本分析文本可读性情感分析余弦相似度不确定性品牌重要性代码命令包

可以用统计

安装cntext

复制代码

功能模块

cntext含io、model、stats、mind四个模块

  • 导入数据用io
  • 训练模型扩展词典用model
  • 统计词频、情感分析、相似度等用stats
  • 可视化模块plot
  • 态度认知文化变迁用mind

函数部分加粗的为常用函数。


一、IO模块
模块函数功能
ioct.get_dict_list()查看cntext内置词典
ioct.read_yaml_dict(yfile)读取内置yaml词典
ioct.detect_encoding(file, num_lines=100)诊断txt、csv编码格式
ioct.get_files(fformat)查看符合fformat路径规则的所有的文件
ioct.read_yaml_dict(yfile)读取内置yaml词典
ioct.read_pdf(file)读取PDF文件
ioct.read_file(file, encoding)读取文件
ioct.read_files(fformat, encoding)读取符合fformat路径规则的所有的文件,返回df
ioct.extract_mda(text, kws_pattern)提取A股年报中的MD&A文本内容。如果返回'',则提取失败。
ioct.traditional2simple(text)繁体转简体
ioct.fix_text(text)将不正常的、混乱编码的文本转化为正常的文本。例如全角转半角


二、Stats模块
模块函数功能
statsct.term_freq(text, lang='chinese')词频统计
statsct.readability(text, lang='chinese')文本可读性
statsct.sentiment(text, diction, lang=‘chinese’)无(等)权重词典的情感分析
statsct.sentiment_by_valence(text, diction, lang='chinese')带权重的词典的情感分析
statsct.word_in_context(text, keywords, window=3, lang=‘chinese’)在text中查找keywords出现的上下文内容(窗口window),返回df
statsct.epu(text, e_pattern, p_pattern, u_pattern)使用新闻文本数据计算经济政策不确定性EPU,返回df
statsct.fepu(text, ep_pattern='’, u_pattern='')使用md&a文本数据计算企业不确定性感知FEPU
statsct.semantic_brand_score(text, brands, lang=‘chinese’)衡量品牌(个体、公司、品牌、关键词等)的重要性
statsct.cosine_sim(text1, text2)余弦相似度
statsct.jaccard_sim(text1, text2)Jaccard相似度
statsct.minedit_sim(text1, text2)最小编辑距离
statsct.word_hhi(text)文本的赫芬达尔-赫希曼指数

三、Plot模块
模块函数功能
plotct.matplotlib_chinese()支持matplotlib中文绘图
plotct.lexical_dispersion_plot1(text, targets_dict, lang, title, figsize)对某一个文本text, 可视化不同目标类别词targets_dict在文本中出现位置
plotct.lexical_dispersion_plot2(texts_dict, targets, lang, title, figsize)对某几个文本texts_dict, 可视化某些目标词targets在文本中出现相对位置(0~100)

四、Model模块

本部分主要内容是词嵌入模型相关技术, 包括Word2Vec(GLove)的训练、读取、扩展词典。


模块函数(类)功能
modelct.W2VModel(corpus_file, encoding, lang=‘chinese’)训练Word2Vec
modelct.load_w2v(w2v_path)读取cntext2.x训练出的word2vec模型文件
modelct.expand_dictionary(wv, seeddict, topn=100)扩展词典, 结果保存到路径[output/Word2Vec]中
modelct.Glove(corpus_file, lang='chinese')训练GLove模型。 算法运行较慢,吃内存,不推荐!!
modelct.SoPmi(corpus_file, seed_file, lang='chinese')共现法扩展词典


五、Mind模块

词嵌入中蕴含着人类的认知信息,以往的词嵌入大多是比较一个概念中两组反义词与某对象的距离计算认知信息。

  • 多个对象与某概念的语义远近,职业与性别,某个职业是否存在亲近男性,而排斥女性

  • 多个对象在某概念向量投影的大小, 人类语言中留存着对不同动物体积的认知记忆,如小鼠大象。动物词在词向量空间中是否能留存着这种大小的记忆



本模块主要是利用已训练出的word2vec模型,挖掘潜在的态度偏见、刻板印象等。 这部分难度较大, 建议有精力且电脑性能好的同学可以用 cntext 训练模型, 再来实验Mind模块。


模块函数(类)功能
mindct.sematic_projection(wv, words, c_words1, c_words2)测量语义投影
mindct.sematic_distance(wv, words, c_words1, c_words2)测量语义距离
mindct.divergent_association_task(wv, words)测量发散思维(创造力)
mindct.discursive_diversity_score(wv, words)测量语言差异性(认知差异性)
mindct.procrustes_align(base_embed, other_embed)两个word2vec进行语义对齐,可反应随时间的社会语义变迁







二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2024-7-15 10:28:01
不断更新
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2024-7-15 10:28:10
永久免费更新
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2024-7-15 10:28:37
附件内容包含
1、cntext-2.1.3-py3-none-any.whl
2、使用说明
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2024-7-15 15:13:31
感谢楼主分享
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群