用python做文献计量学全代码

本文档介绍了如何使用Python进行文献计量学分析,包括数据导入、数据处理、图表绘制和话题建模。通过metaknowledge库展示了文献年份分布、期刊引用分析、主题建模(NMF和LDA)等步骤,还涉及了网络分析中的共引网络和合作网络的构建。
摘要由CSDN通过智能技术生成

各位朋友大家好,今天给大家带来文献计量学的知识和全代码,文献计量学是属于一门边缘学科,交叉科学。我在网上浏览了一下,用R和专属工具做的已经有老师进行了展示,python的还没有所以在这里给大家一个全面的展示

下面把全代码给大家:

import metaknowledge as mk
import pandas
import matplotlib.pyplot as plt
import seaborn as sns
#%matplotlib inline
get_ipython().magic("config InlineBackend.figure_format = 'retina'")

sns.set_style(style="white") # change the default background plot colour
sns.set(font_scale=.75)
plt.rc("savefig", dpi=400) # improve default resolution of graphics

#交互作图库
import chart_studio.plotly as py
import plotly.graph_objs as go
#导入文献检索
import os
os.chdir('E:/pythoncode2021/metaknowledge')
RC = mk.RecordCollection('raw_data/imetrics/', cached = True)
len(RC)
RC.writeCSV('generated_datasets/reco.csv')
##
RC1314 = RC.yearSplit(2013, 2014)
gender_breakdown = RC1314.genderStats()
gender_breakdown
##
print(RC.glimpse())
##
df = pandas.DataFrame(RC.makeDict())
selectedVars = df[['AF', 'AB', 'PY', 'TI', 'SO', 'num-Authors', 'TC']]
selectedVars[:10] # show the first 10 rows.
df.columns.values.tolist()
top_40 = selectedVars.sort_values(['TC'], ascending = False)[:40]
top_40.head()

trace = go.Bar(
            x=top_40['TI'],
            y=top_40['TC']
    )

data = [trace]

layout = go.Layout(
    yaxis=dict(
        title='Times Cited',
    )
)

fig = go.Figure(data=data, layout=layout)
#py.iplot(fig, filename='times-cited')
#import plotly.io as pio
#pio.renderers.default='notebook'
#fig.show()
from plotly.offline import plot
plot(fig)
#把每篇文章进行题目的缩小
top_40['short_title'] = top_40['TI'].str[:20]
top_40[['TI', 'short_title', 'TC']].head()
#画图
with sns.axes_style("white"):
    horizontal_bar = sns.barplot(data = top_40, x = 'TC', y = 'short_title', color = 'gray')
    horizontal_bar.set(xlabel='Number of Citations', ylabel='')
    sns.despine(left = True, right = True, bottom = True, top = True)
    plt.tight_layout()
plt.savefig('figures/horizontal_barplot.png')
plt.savefig('figures/horizontal_barplot.pdf')
#[2:] removes incomplete data from 2016
growth = pandas.DataFrame(RC.timeSeries('year', outputFile = 'generated_datasets/growth.csv'))[2:]
growth[:10]
with sns.axes_style("white"):
    plt.plot(growth['year'], growth['count'], color

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

飞时过

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

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

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

打赏作者

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

抵扣说明:

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

余额充值