【打卡】Coggle 2月竞赛学习:图分析与图嵌入

背景介绍:

图(Graphs)是一种对物体(objects)和他们之间的关系(relationships)建模的数据结构,物体以结点(nodes)表示,关系以边(edges)表示。图是复杂系统中常用的信息载体,可以表示现实中许多复杂关系,如社交网络、犯罪网络、交通网络等。

环境配置:

实践环境建议以Python3.7+,且需要安装如下库:

  • numpy
  • pandas
  • networkx
  • igraph
  • gensim

学习打卡

任务名称难度
任务1:图属性与图构造低、1
任务2:图查询与遍历低、2
任务3:节点中心性与应用中、2
任务4:图节点嵌入算法(DeepWalk/node2vec)高、3
任务5:图节点嵌入算法:LINE/SDNE高、3
任务6:图节点嵌入算法:GraphGAN高、3
任务1:图属性与图构造

步骤1:导入networkx

import pandas as pd
import networkx as nx # 导入networkx

步骤2:加载Wiki数据集,包含来自 19 个类别的 2405 个文档和它们之间的 17981个边。

# 加载Wiki数据集
# 两列,分别为节点id,节点类别
group = pd.read_csv('http://mirror.coggle.club/dataset/graph-wiki/group.txt.zip', sep='\t', header=None)
# 两列,分别为出发节点id,目的节点id
graph = pd.read_csv('http://mirror.coggle.club/dataset/graph-wiki/graph.txt.zip', sep='\t', header=None)
print(group)
print(graph)

在这里插入图片描述
步骤3:使用networkx构造上述有向图

# 构造图
G = nx.DiGraph()
G.add_nodes_from(group[0].values)
G.add_edges_from(graph.values)
任务2:图查询与遍历

步骤1:使用networkx对Wiki数据集进行如下统计
节点个数、边个数

print("Number of Nodes:", G.number_of_nodes())
print("Number of Edges:", G.number_of_edges())

在这里插入图片描述
节点平均入度、出读
存在指向自身节点的个数
步骤2:对节点1397的深度5内进行深度和广度遍历
步骤3:判断节点1573与节点1397之间是否存在联通性

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

MR. Ben AI

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值