ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python读取文档列表数据为列表并统计某一项数据制成邻接矩阵

2021-11-15 22:59:48  阅读:157  来源: 互联网

标签:author python 邻接矩阵 dic print authors maxtrix 列表 id


python读取文档列表数据为列表并统计某一项数据制成邻接矩阵

文章目录


import json



from pandas import  DataFrame
import json
import numpy as np

file = open('db.txt', encoding='UTF-8')
js = file.read()
dic = json.loads(js)
#print(dic)
file.close()



authors=[]
authors_id={}
empty=[]
author_name={}
maxtrix = np.zeros((100, 100))
#第一个循环代表遍历每一篇论文
for leng_dic in range(len(dic)):
    author_dic=dic[leng_dic].get('authors', [])
    if author_dic is None:
        empty.append(leng_dic)
    else:


        author_now = []


        for i in range( len(author_dic)):

            author_name[author_dic[i]['_id']] = author_dic[i]['name']

            ##给每一个作者制定编号
            if author_dic[i]['_id'] not in authors:
                authors.append(author_dic[i]['_id'])
                authors_id[author_dic[i]['_id']]=len(authors)
                #print(authors_id)
            else:
                authors_id[author_dic[i]['_id']]=authors_id[author_dic[i]['_id']]
            author_now.append(author_dic[i]['_id'])
            ##依据编号,给当前遍历的论文作者制定邻接矩阵
        for author_id_now in  author_now:
            for author_id_now1 in author_now:
                a=authors_id[author_id_now]
                b=authors_id[author_id_now1]
                maxtrix[a][b]=maxtrix[a ][b ]+1
                maxtrix[b][a] = maxtrix[b][a] + 1




print(maxtrix)

     
data_frame = DataFrame(data=maxtrix)
data_frame.to_csv('maxtrix.csv')
print(authors_id)
print(author_name)
print(len(authors_id))
print(len(author_name))

标签:author,python,邻接矩阵,dic,print,authors,maxtrix,列表,id
来源: https://blog.csdn.net/qq_48345413/article/details/121345651

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有