G指数的计算方法为:将发表的论文按被引次数由高向低排序,将序号平方,被引次数按序号层层累加,当序号平方大于等于累计被引次数时,该序号则为g指数。如序号平方不是恰好等于而是小于对应的累计被引次数,则最接近累计被引次数的序号即为g指数。简而言之,g 指数是引频累积数量大于等于序号平方的最大序号。
举个例子:
某个学者发表了10篇论文,具体引用次数如下:
论文序号n 1 2 3 4 5 6 7 8
被引频次times 30 8 6 5 5 4 3 2
累计被引频次sum_times 30 38 44 49 54 58 61 63
序号平方n2 1 4 9 16 25 36 49 64
表1的第3行和第4行分别计算了该学者的累积被引频次和论文序号的平方。通过将二者依次对比可以发现,当论文序号为7时,该作者的累积被引频次61大于论文序号的平方49;但当论文序号为8时,该作者的累积被引频次63开始小于序号的平方64,所以该学者的g指数为7。
id代表作者,year代表年份,times代表被引频次,sum_times代表累计被引频次,n2代表序号的平方
从大于等于0的至少有0个循环起,在所有符合条件的g中取最大值,另外生成一个新列或新的数据集,对应id,year,G。
---------------------- copy starting from the next line -----------------------
- * Example generated by -dataex-. To install: ssc install dataex
- clear
- input int(year times) str6 id float(n n2 sum_times)
- 2005 21 "000008" 1 1 21
- 2005 11 "000008" 2 4 32
- 2005 2 "000008" 3 9 34
- 2005 0 "000008" 4 16 34
- 2005 0 "000008" 5 25 34
- 2005 0 "000008" 6 36 34
- 2006 3 "000008" 1 1 3
- 2006 0 "000008" 2 4 3
- 2007 4 "000008" 1 1 4
- 2007 4 "000008" 2 4 8
- 2007 3 "000008" 3 9 11
- 2007 0 "000008" 4 16 11
- 2007 0 "000008" 5 25 11
- 2007 0 "000008" 6 36 11
- 2008 10 "000008" 1 1 10
- 2008 4 "000008" 2 4 14
- 2008 3 "000008" 3 9 17
- 2008 2 "000008" 4 16 19
- 2008 0 "000008" 5 25 19
- 2008 0 "000008" 6 36 19
- 2008 0 "000008" 7 49 19
- 2008 0 "000008" 8 64 19
- end