一、加载数据集
数据集格式如下:

friends_file = './data/python_friends.json'
with open(friends_file) as inf:
friends = json.load(inf)
二、创建图
用存在好友关系的数据就能构建一张图。
# 1.创建有向图
G = nx.DiGraph()
# 2.创建顶点
main_friends = friends.keys()
G.add_nodes_from(main_friends)
# 3.创建边
for user_id in friends:
for friend in friends[user_id]:
if friend in main_friends:
G.add_edge(user_id, friend)
nx.draw(G, alpha=0.5, edge_color='b')

三、创建用户相似度
本章的任务是向拥有共同好友的用户推荐彼此。逻辑是:如果两个用户有共同的好友,那么这两个用户高度相似。在现有图的基础上创建一个新图。新图中,顶点是用户,边要升级为带权重