Python关键词共现矩阵【论文】

大抵是不用进厂了罢。


目录

一、🌎Python简介

二、🔖构建关键词矩阵

三、🔖构建关键词共线热力图

🥇Summary

获取源码?私信?关注?点赞?收藏?WeChat?


一、🌎Python简介

Python是一种高级、解释性、面向对象的编程语言。它具有简洁的语法和易于阅读的代码风格,使得它成为初学者和专业开发人员的首选语言之一。

Python具有广泛的应用领域,包括Web开发、数据分析、人工智能、科学计算、网络编程等。它拥有强大的第三方库和工具生态系统,如NumPy、Pandas、Matplotlib和TensorFlow,使得开发人员能够快速构建复杂的应用程序。

Python还是一种跨平台的语言,可以在多个操作系统上运行,如Windows、Linux和MacOS。

由于其易学易用的特性,Python已经成为编程教育的主流语言之一。许多大学和学校都将Python作为入门级编程语言进行教学。

总体而言,Python是一种功能强大、易于学习和使用的编程语言,适用于各种应用场景,并且在业界有着广泛的应用和支持。

使用Python进行财务分析是一种常见的应用。Python有很多用于数据分析和金融建模的库,如Pandas、NumPy和Matplotlib等。


【NLP】关键词共现/属性共现矩阵
【共现】理解起来无非是两个词语同时出现的频次作为一个指标,构造矩阵。矩阵的第一列和第一行都是词语列表中的所有词,因此对角线一般设置为0——即不把自己和自己共现算进去。假如矩阵为M,M【i】【j】
就表示第i+1个词和第j+1个词一起在文档集合里出现了多少次,且M【i】【j】=M【j】【i】。
 


 

二、🔖构建关键词矩阵

共现分析在数据分析中经常使用到,这里的关键词可以指的是文献中的关键词、作者、作者机构等等。在其他领域中,如电影电视剧也可以用来研究演员共现矩阵等等。在得出共现矩阵后,可以使用UCINET、NETDRAW或者Gephi来进行共现图谱的绘制,达到数据可视化的效果。

首先看看原始数据:
————————————————

关键词:

————————————————

下面的代码中我将通过numpy处理数据以及构建共现矩阵,为了统计以上关键字在 data.xlsx 文件中同时出现的次数,我们可以使用 Pandas 和 NumPy 库来处理数据并生成共现矩阵,并最终将结果输出到一个 CSV 文件中。

以下是完成这个任务的示例代码:

import numpy as np
import pandas as pd

# 读取 Excel 文件
df = pd.read_excel('E:\Desktop\data.xlsx')

# 构建关键词列表
keywords = [
    "管道", "泄漏", "天然气", "检测", "装置", "连接", "气体", "固定", "传感器", "安装",
    "信号", "光纤", "系统", "设置", "监测", "方法", "实用新型", "公开", "密封", "技术",
    "机构", "定位", "数据", "采集", "模块", "领域", "位置", "压力", "组件", "传感",
    "模型", "浓度", "结构", "内部", "单元", "本体", "控制", "发生", "表面", "输出",
    "提供", "顶部", "快速", "泄露", "封堵", "测量", "报警", "壳体", "提高", "调节"
]

# 创建关键词共现矩阵
co_occurrence_matrix = np.zeros((len(keywords), len(keywords)), dtype=int)

# 统计关键字共现次数
for i in range(len(keywords)):
    for j in range(len(keywords)):
        co_occurrence_matrix[i, j] = sum(df['发明名称'].str.contains(keywords[i]) & df['text'].str.contains(keywords[j]))

# 创建共现矩阵 DataFrame
co_occurrence_df = pd.DataFrame(co_occurrence_matrix, index=keywords, columns=keywords)

# 输出共现矩阵
print(co_occurrence_df)

# 将共现矩阵保存为 CSV 文件
co_occurrence_df.to_csv('co_occurrence_matrix.csv')

请确保将代码中的 data.xlsx 替换为你实际的 Excel 文件名,并根据文件的实际格式和内容进行调整。运行代码后,将会输出关键字的共现矩阵,并将该矩阵保存为一个名为 co_occurrence_matrix.csv 的 CSV 文件。

结果如下:

使用wps打开:

 


仅通过numpy统计共现次数,并在控制台打印输出

import numpy as np

# 构建关键词列表
keywords = [
    "管道", "泄漏", "天然气", "检测", "装置", "连接", "气体", "固定", "传感器", "安装",
    "信号", "光纤", "系统", "设置", "监测", "方法", "实用新型", "公开", "密封", "技术",
    "机构", "定位", "数据", "采集", "模块", "领域", "位置", "压力", "组件", "传感",
    "模型", "浓度", "结构", "内部", "单元", "本体", "控制", "发生", "表面", "输出",
    "提供", "顶部", "快速", "泄露", "封堵", "测量", "报警", "壳体", "提高", "调节"
]

# 创建关键词共现矩阵
matrix = np.zeros((len(keywords), len(keywords)))

# 遍历关键词列表,并统计共现次数
for i in range(len(keywords)):
    for j in range(len(keywords)):
        # 这里可以根据实际情况定义共现规则,比如两个关键词在文本中同时出现则计数加一
        # 这里只是示例,随机生成一个共现次数
        matrix[i][j] = np.random.randint(0, 10)

# 打印关键词共现矩阵的行名和列名
print("\t" + "\t".join(keywords))
for i in range(len(keywords)):
    print(keywords[i], end="\t")
    for j in range(len(keywords)):
        print(matrix[i][j], end="\t")
    print()

三、🔖构建关键词共线热力图

通过numpy以及matplotlib构建热力图

import numpy as np
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties

# 构建关键词列表
keywords = [
    "管道", "泄漏", "天然气", "检测", "装置", "连接", "气体", "固定", "传感器", "安装",
    "信号", "光纤", "系统", "设置", "监测", "方法", "实用新型", "公开", "密封", "技术",
    "机构", "定位", "数据", "采集", "模块", "领域", "位置", "压力", "组件", "传感",
    "模型", "浓度", "结构", "内部", "单元", "本体", "控制", "发生", "表面", "输出",
    "提供", "顶部", "快速", "泄漏", "封堵", "测量", "报警", "壳体", "提高", "调节"
]

# 创建关键词共现矩阵
matrix = np.zeros((len(keywords), len(keywords)))

# 遍历关键词列表,并统计共现次数(这里只是随机生成一个共现次数)
for i in range(len(keywords)):
    for j in range(len(keywords)):
        matrix[i][j] = np.random.randint(0, 10)

# 设置中文字体
font = FontProperties(fname='C:\Windows\Fonts\msyh.ttc', size=12)  # 替换为你的中文字体文件路径

# 利用 Matplotlib 绘制关键词共现矩阵的热力图
plt.figure(figsize=(12, 10))
plt.imshow(matrix, cmap='hot', interpolation='nearest')
plt.colorbar()
plt.xticks(ticks=np.arange(len(keywords)), labels=keywords, rotation=90, fontproperties=font)
plt.yticks(ticks=np.arange(len(keywords)), labels=keywords, fontproperties=font)
plt.show()

结果如下:

至此,本篇文章就已经全部结束了,感谢大家的观看。

已许久许久许久……未更新。

忙于考试。

加油加油加油!!!

/(ㄒoㄒ)/~~


🥇Summary

上述内容就是此次  Python关键词共现矩阵【论文】 的全部内容了,感谢大家的支持,相信在很多方面存在着不足乃至错误,希望可以得到大家的指正。🙇‍(ง •_•)ง

我非轻舟

2024年第一期,希望有一个好的开始!!!

希望大家有好的意见或者建议,欢迎私信,一起加油


以上就是本篇文章的全部内容了

 ~ 关注我,点赞博文~ 每天带你涨知识!

1.看到这里了就 [点赞+好评+收藏] 三连 支持下吧,你的「点赞,好评,收藏」是我创作的动力。

2.关注我 ~ 每天带你学习 :各种前端插件、3D炫酷效果、图片展示、文字效果、以及整站模板 、HTML模板 、C++、数据结构、Python程序设计、Java程序设计、爬虫等! 「在这里有好多 开发者,一起探讨 前端 开发 知识,互相学习」!

3.以上内容技术相关问题可以相互学习,可 关 注 ↓公 Z 号 获取更多源码 !
 

获取源码?私信?关注?点赞?收藏?WeChat?

👍+✏️+⭐️+🙇‍

有需要源码的小伙伴可以 关注下方微信公众号 " Enovo开发工厂 " ,一起交流啊!!!

 

  • 17
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Enovo_你当像鸟飞往你的山

好好读书!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值