问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

快速入门Gephi可视化:词频矩阵与知识单元共现网络图绘制

创作时间:
作者:
@小白创作中心

快速入门Gephi可视化:词频矩阵与知识单元共现网络图绘制

引用
CSDN
1.
https://m.blog.csdn.net/weixin_58006135/article/details/141690367

本文将介绍如何使用Gephi软件绘制词频矩阵和知识单元共现网络图。通过详细的操作步骤和代码示例,帮助读者掌握这一数据可视化方法。

前言

在上期博文中,我们了解了如何利用LDA主题模型创建主题关系网络图,探索文本数据中的主题结构。本文将继续探讨数据可视化,在这篇博文中,我们将学习如何使用Gephi工具绘制共现矩阵或基于语义的网络共现图,以更好地呈现知识单元之间的关联。

步骤一:代码实现共现矩阵

准备数据 首先,准备包含知识单元(如词语、主题、概念等)之间关联的共现数据。这些数据可以是基于文本分析、语料库或专业领域知识的产物。确保数据格式符合Gephi的导入要求。

import numpy as np
import pandas as pd

# 读取数据集
df4 = pd.read_csv('数据简单清洗1with_cut.csv')

# 将文本进行分词
text_cut = []
for text in df4['text_cut']:
    if isinstance(text, str):
        text_cut.append(text.split())
    else:
        text_cut.append([])

all_words = [word for sublist in text_cut for word in sublist]
word_frequency = pd.Series(all_words).value_counts().reset_index()
word_frequency.columns = ['word', 'frequency']
keywords = word_frequency.head(50)

keywords.to_csv('word_frequency_result.csv', index=False, encoding='utf-8')

# 初始化关键词共现矩阵
matrix = np.zeros((len(keywords), len(keywords)))

# 构建关键词共现矩阵
for cont in text_cut:
    if isinstance(cont, list):
        for i, w1 in enumerate(keywords['word']):
            if w1 in cont:
                for j, w2 in enumerate(keywords['word']):
                    if w2 in cont and (abs(cont.index(w1) - cont.index(w2)) == 0 or abs(cont.index(w1) - cont.index(w2)) == 1):
                        matrix[i][j] += 1

# 填充源节点与目标节点相同的 weight 得分
for i in range(len(keywords)):
    matrix[i][i] = 0  # 设置对角线上的元素为0,表示源节点与目标节点相同时的共现次数

# 将 matrix 转换为 DataFrame
matrix_df = pd.DataFrame(matrix, columns=keywords['word'], index=keywords['word'])

# 将共现矩阵保存为 CSV 文件
matrix_df.to_csv('共现矩阵分词结果.csv', encoding='utf-8')

步骤二:导入数据到 Gephi 启动 Gephi 软件

使用数据导入功能将准备好的共现数据加载到 Gephi 中。根据数据特点进行节点和边的配置,调整节点大小、颜色、边的粗细等参数。

1. 导入数据

2. 模块化运行

3. 设置节点大小颜色边的颜色初步布局

步骤三:创建网络图 利用 Gephi 提供的布局算法

对网络图进行布局调整,以优化节点之间的位置关系和可视化效果。根据需要,可以添加标签、调整视角,使得图形更具表现力和可读性。

1. 预览数据调整字体边参数

步骤四:分析和解释

通过观察绘制的共现矩阵或基于语义的网络共现图,分析知识单元之间的关联程度、集聚模式和重要节点。结合实际案例或领域专业知识,解释图中展示的关系和结构。

共现网络图是一种基于节点和边的图形形式,用于展示文本数据中关键词之间的关系。该图表是通过计算关键词共同出现的次数而生成的,简而言之,它展示了文章中哪些关键词经常一起出现。这种可视化图表非常有用,因为它直观地展现了文本中关键词之间的“亲疏关系”。每个关键词都以一个节点表示,节点之间的连线表示它们一起出现的频率。通过这些节点和连线,我们能够直观地发现哪些关键词在文本中频繁共现,从而揭示出它们之间的联系和相关性。在图中,关键词以节点的形式呈现,节点的大小代表了关键词的词频,而连线的粗细则代表了关键词之间的共现值的大小。

这种可视化分析的价值在于它有助于我们发现文本数据中隐藏的关联。举例来说,如果我们在一份共现网络图中看到“工作”和“内卷”的节点紧密相连,那么我们可以推测该报道可能聚焦于工作内卷方面的内容。同理,如果“工作”和“生活”两个节点连接在一起,我们可能会发现这些文本在讨论工作生活问题。

最后,希望您在技术探索的旅途中不断前行,不断学习,不断成长。写作顺利,创意迸发!

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号