How to calculate Hm-Index?

Michael Schreiber proposed the Hm-Index. It is related to the h-index but it adjusts for the number of authors on a paper. So, for instance, if you had two people with a h-index of 10, but one had all sole-author papers and the other had multi-author papers, the one with the sole-author papers would have a higher hm-index.

However, I can't find a concise statement of the formula on the internet. While a close reading of the paper provides the answer, I think there should be a concise statement of the method quickly available on the interent.

Thus, how do you calculate the hm-index?

Schreiber, M. (2008). A modification of the h-index: The hm-index accounts for multi-authored manuscripts. Journal of Informetrics, 2(3), 211-216.

This appears to be the algorithm:

1. Order publications by decreasing number of citations
2. Assign a weight to each publication as the inverse of the number of authors (e.g., 1 author paper = 1; 2 author paper = 0.5; 3 author paper = 0.33, etc.)
3. Take the cumulative sum of weights while this cumulative sum remains less than or equal to the number of citations for a given paper. This is the hm-index.

So, in R code, it might look like this:

``````hmindex <- function(citations, authors) {
dat <- data.frame(citations = citations, authors = authors)
dat <- dat[order(dat\$citations, decreasing = TRUE), ]
dat\$weights <- 1/dat\$authors
dat\$cweights <- cumsum(dat\$weights)
list(
citetab = dat,
hmindex =  dat[sum(dat\$cweights <= dat\$citations), "cweights"])
}
``````

And here's an example using the data from the paper of an academic with 8 papers each with a certain number of citations and a certain number of authors.

``````citetab <- data.frame(
citations = c(16,15,14,12, 10, 3,3,2),
authors = c(2,2,3,3,2,2,3,1))

hmindex(citetab\$citations, citetab\$authors)
``````

It produces the following output:

``````> hmindex(citetab\$citations, citetab\$authors)
\$citetab
citations authors   weights cweights
1        16       2 0.5000000 0.500000
2        15       2 0.5000000 1.000000
3        14       3 0.3333333 1.333333
4        12       3 0.3333333 1.666667
5        10       2 0.5000000 2.166667
6         3       2 0.5000000 2.666667
7         3       3 0.3333333 3.000000
8         2       1 1.0000000 4.000000

\$hmindex
[1] 3
``````

I.e., the researcher's h-index is 5 (because they have 5 papers with at least 5 citations. But their hm-index is 3 (i.e., largest cumulative weight that is greater than or equal to paper citation count).