import pandas as pd import numpy as np

读入csv文件

data = pd.read_csv('your_file_path.csv')

按照pubid变量进行分组

groups = data.groupby('pubid')

初始化共现矩阵

research_areas = np.zeros((len(groups), len(data['ResearchAreas'].unique())))

遍历每个pubid分组

for i, (_, group) in enumerate(groups): # 获取该分组中的ResearchAreas areas = group['ResearchAreas'].unique() # 遍历该分组中的每个ResearchAreas for area in areas: # 获取该ResearchAreas在矩阵中的索引 j = np.where(data['ResearchAreas'].unique() == area)[0][0] # 在矩阵中对应位置加1 research_areas[i, j] += 1

将矩阵转化为DataFrame

df = pd.DataFrame(research_areas, columns=data['ResearchAreas'].unique(), index=groups.groups.keys()) print(df)

Python CSV 文件共现矩阵:基于 pubid 变量的 ResearchAreas 分析

原文地址: https://www.cveoy.top/t/topic/nToO 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录