داخلی
»گفتگو
کاربرد نرم افزار R در مطالعات علم سنجی
دکتر جعفر مهراد استاد پیشکسوت دانشگاه شیراز در گفتگوی اختصاصی با خبرنگار لیزنا گفت: در گفتگوی شنبه ٢١ بهمن ماه ١۴٠٢ با لیزنا با عنوان «تجدید نظر در برنامههای درسی علم اطلاعات و دانش شناسی (۴)»، آموزش برنامهنویسی را برای کارشناسان اطلاعات مورد تاکید قرار دادم و آموختن برخی از زبان ها از جمله R را خاطر نشان کردم. در این گفتگو، به عنوان مثال، زبان R را در علم سنجی با بیان مثال ها با هم مطالعه می کنیم.
وی افزود: «R» یک زبان برنامه نویسی و محیط نرم افزاری است که معمولاً برای محاسبات آماری و گرافیک استفاده می شود. در علم سنجی، R را می توان برای هدف های مختلف مانند تحلیل کتابسنجی، تحلیل شبکه استنادی، تحلیل هم نویسندگی و تجسم دادههای علمی استفاده کرد.
به گفته دکتر مهراد، در تجزیه و تحلیل کتاب سنجی، بسته های R مانند bibliometrix می تواند در تحلیل دادههای کتابشناختی در مقالات نشریات علمی مورد استفاده قرار گیرد. در اینجا، دانشجویان علم سنجی و استادان پژوهشگر می توانند الگوهای انتشار، استناد، هم استنادی و هم نویسندگی را کشف کنند. همچنین، بسته های R, مانند igraph امکان ایجاد و تجزیه و تحلیل شبکه های استنادی را فراهم می کند. محققان می توانند الگوهای استنادی را بررسی، مقالات یا نویسندگان تاثیر گذار را شناسایی و روابط استنادی را تجسم کنند.
استاد پیشکسوت دانشگاه شیراز ادامه داد: «R» می تواند برای تجزیه و تحلیل شبکه های هم نویسندگی به منظور درک الگو های همکاری در میان پژوهشگران مورد استفاده قرار گیرد. بسته هایی مانند bibliometrix یا igraph می توانند در تجسم تجربه و تحلیل شبکه های هم نویسندگی همکاری کنند. «R» طیف گستردهای از بسته ها را برای ایجاد تجسم مانند طرح ها، نمودارها و نقشه ها ارایه می دهد. این تجسم می تواند در ارایه یافته های علم سنجی از جمله روند بروندادهای انتشاراتی، شبکه های استنادی و الگو های همکاری به طور موثر کمک کند. بعلاوه، بسته های R مانند "tm" و "quanteda" را می توان برای متن کاوی و تجزیه و تحلیل انتشارات علمی استفاده کرد. پژوهشگران می توانند مدلسازی موضوعی، تحلیل دیدگاه ها و استخراج کلیدواژه ای را برای بدست آوردن بینش لازم از داده های متنی انجام دهند.
چهره ماندگار علمی کشور خاطرنشان کرد: به طوری که ملاحظه می کنیم، R یک پلاتفرم انعطاف پذیر و قدرتمند برای انجام تحلیل های علم سنجی و تولید بینش از داده های علمی فراهم می آورد. با استفاده از بسته ها و ویژگیهای متعدد ان، محققان می توانند به طور موثر جنبه های مختلف ارتباطات و همکاری های علمی را کشف و درک کنند.
وی بیان داشت: مثال هایی را که در اینجا با هم مشاهده می کنیم مثال های فرضی است از چگونگی استفاده از بسته bibliometrix در R برای تحلیل های علم سنجی:
١- تحلیل روند انتشار: دانشجویان علم سنجی و استادان پژوهشگر می توانند از bibliometrix برای تحلیل روند انتشار در یک زمینه تحقیقاتی خاص در طول زمان استفاده کنند. به عنوان مثال، پرکارترین نشریات علمی، نویسندگان یا کشور هایی را که به این زمینه کمک می کنند، شناسایی و تغییرات در خروجی انتشارات را در طول سال ها پیگیری کرد.
٢- تجزیه و تحلیل استناد: با bibliometrix می توانید یک تحلیل استنادی برای شناسایی مقالات پراستناد در یک دامنه خاص انجام دهید. این تحلیل می تواند به شناسایی آثار تاثیر گذار و روند تحقیقاتی که این زمینه را شکل داده اند کمک کند.
٣- هم نویسندگی و تحلیل شبکه: با استفاده از bibliometrix می توانید شبکه های همکاری را برای تجسم الگو های همکاری بین پژوهشگران ایجاد کنید. با شناسایی خوشه های نویسندگان مشترک، می توانید جوامع تحقیقاتی و پویایی همکاری را در آن جامعه کشف کنید.
۴- تحلیل (وقوع) همزمانی کلیدواژه: پژوهشگران علم سنجی می توانند از bibliometrix برای انجام تحلیل همزمان کلیدواژه ای برای شناسایی رایج ترین موضوعات در مجموعه ای از مقالات علمی استفاده کنید. این تحلیل می تواند زمینه های تحقیقاتی در حال ظهور یا ارتباطات بین رشتهای در این زمینه را نشان دهد.
۵- نگاشت چشم انداز علمی: با bibliometrix شما می توانید نگاشت های علمی را برای تجسم ساختار یک زمینه تحقیقاتی براساس هم استنادی یا زوج های کتابشناختی تولید کنید. این نگاشت ها می توانند بینش هایی را در مورد ساختار فکری این حوزه و روابط بین موضوعات مختلف تحقیق ارایه دهد.
بنیانگذار موسسه ISC ادامه داد: برای روشن تر شدن موضوع، چند نمونه عملی از چگونگی استفاده از بسته bibliometrix در R را برای تحلیل های علم سنجی همراه با برخی از فرمول های اساسی با هم مشاهده می کنیم:
١- تحلیل روند انتشار:
library(bibliometrix)
#Load bibliographic data
data <- readFiles("path_to_files")
#Extract publication years
publication_counts<- table (years)
#plotting publication trends
plot(names (publication_counts), publication_counts, type ="b",
xlab = "year", ylab = Number of Publication", main = "Publication Trends")
٢- تحلیل استنادی
...R
#Load bibliographic data
data <- readFiles("path_to_files")
#Calculate total citations per paper
total_citations <- colSums(data$Cited.by)
#identify top cited papers <-data[order(total_citations, decreasing = TRUE),]
#print top cited papers
Print(top_cited_papers[, c("Title", "Cited.by")])
٣- هم نویسندگی و تحلیل شبکه:
...R
#Load bibliographic data
date <- readFiles("path-to-files")
# Create co-authorship matrix
coauthor-matrix <- coMatrix(data)
# Visualize co-authorship network
Plot(coauthor_matrix, main = "Co-authorship Network")
۴- تحلیل همزمانی کلیدواژه:
...R
#Load bibliographic data
data <- readFiles("path_to_files")
#Extract keywords
keywords <-data$author.keywords
#Create keyword co-occurrance matrix
coocurrence_matrix <- biblioNetwork(data, analysis = "ciocurrences", sep= ";")
#Visualize keyword co-ocurrence network
plot(coocurrence_ matrix, label = V(coocurrence_matrix) $label, main = "Keyword Co-ocurrence Network")
به طوری که در بالا مشاهده می کنیم، این ها فقط نمونه های ساده ای هستند تا نشان دهند که چگونه می توان از bibliometrix برای انواع مختلف تجزیه و تحلیل استفاده کنید. بسته به سوالات و داده های تحقیقاتی خاص، ممکن است لازم باشد این نمونه ها را بیشتر سفارشی سازی کنید.
با استفاده از کتابخانه pyBibX مهم ترین وقدرتمندتر کتابخانه پایتون از بین کتابخانه های (BiblioTools. Litstudy . . Scientopy . Metaknowledg) می باشد می توان با استفاده از این کتابخانه بیگ دیتاهای استخراج شده از اسکوپوس، پاب مد و وب آو ساینس با ابزارهای این کتابخانه از جمله chatGPT، خلاصه سازی متن، نمودار، نقشه درختی، تجزیه و تحلیل همکاری، تجزیه و تحلیل شباهت، خلاصه سازی متن، تحلیل استنادی، مدل سازی موضوع وh-index و پردازش زبان طبیعی، الگوریتم های خوشه بندی و ...خروجی گرفت.
در مرحله اول در محیط گوگل کلوب پایتون pip install pyBibX می کنیم تا کتابخانه نصب شود
کتابخانه که برای علم سنجی و نقشه کشی نیاز هست راimort می کنیم.
import numpy as npبرای تحلیل داده
import pandas as pdبرای نمودار
from google.colab import data_table
from tabulate import tabulate
from prettytable import PrettyTable
from pyBibX.base import pbx_probe
و برای نمونه چند کد را آرودم کد های کا مل باید در محیط ژوپیتر نوت بوک و یا گوگل کلوب پایتون کد نویسی و ران شو ند اگر اجازه بفرمایید در یک مقاله ای که بتونم تمام کدها را ران کرد به نمایش بگذارم در لیزنا منتشر کنم.
ابر واژگان چکیده
bibfile.word_cloud_plot(entry = 'abs', size_x = 15, size_y = 10, wordsn = 500)
تجزیه و تحلیل با استفاده از wordclouds و n-gram.
print(tabulate(bibfile.data.head(n = 10), headers = 'keys', tablefmt = 'psql'))
تجزیه و تحلیل همکاری بین نویسندگان، کشورها، نهادها یا تجزیه و تحلیل مجاورت بین کلمات کلیدی نویسندگان یا کلمات کلیدی پلاس را برجسته کنید. (یک طرح تعاملی).
bibfile.find_nodes(node_ids = [], node_name = [''],
node_only = False)
نتایج تحلیل همکاری نقشه جهانی
bibfile.network_adj_map(view = 'notebook', connections = True, country_lst = [])
بسیار عالی. حتما اقدام کنید من هم موافقم. در همان برنامه اتفاقا برنامه نویسی پایتون در ردیف نخست قرار دارد. البته منظورم رتبه بندی نیست. من هم به سهم خود این بحث را دنبال می کنم. شاید دیگر دوستان نیز همکاری کردند.
مهراد
با زبان برنامه نویسی پایتون و import کردن کتابخانه های matplotlib وk means , dbscan )pandas,(clustering
به نظرم راحتتر از R خروجی و نقشه علمی گرفت. اگر اجازه بدید در پست های بعدی کدها را به اشتراک بزارم