massimoaria / bibliometrix

An R-tool for comprehensive science mapping analysis. A package for quantitative research in scientometrics and bibliometrics.
https://www.bibliometrix.org
Other
496 stars 147 forks source link

Inconsistent results between HIndex and biblioAnalysis for author results #232

Closed calebtru closed 2 years ago

calebtru commented 2 years ago

I'm getting disparate results when trying to measure the number of papers and H indices for authors in a data set. While I noticed this issue for a WoS text import, I was able to reproduce with the package's scientometrics data set. For instance in the code below, the author Small has no publications using the Hindex function and 8 publications using the biblioAnalysis function. Even when declaring the author element, the Hindex function is miscounting authorship.

Hindex

data(scientometrics, package = "bibliometrixData")
Hlist<- Hindex(scientometrics, field = "author", elements = NULL, sep = ";")$H
Hlist$CitationList['SMALL H']

Biblioanalysis

results <- biblioAnalysis(scientometrics, sep = ";")
results$Authors['SMALL H']

Using the provided example structure

authors=gsub(","," ",names(results$Authors))
Hlist2<-Hindex(scientometrics, field = "author", elements = authors, sep = ";")$H
Hlist2$CitationList['SMALL H']
massimoaria commented 2 years ago

The results are not inconsistent. The codes you are comparing are inconsistent!

The function Hindex has an argument "years" used to set the time span of the H-index analysis. The default value, as specified in the help, is 10 years (the means the last ten years). The collection does not include any article published by SMALL H during the last 10 years. Here is the text from the function help:

years | is an integer. It indicates the number of years to consider for Hindex calculation. Default is 10.

If you want to calculate the Hindex considering all articles published during the whole time span, you have to set years=Inf

Hlist<- Hindex(scientometrics, field = "author", elements = NULL, sep = ";", years = Inf)$H
Hlist[Hlist$Element=='SMALL H',]
Element h_index g_index PY_start  TC NP   m_index
152 SMALL H       7       7     1985 454  7 0.1842105