viernes, 17 de junio de 2022

Paquete "scholar"

Usando R en el proceso de investigación. Paquete ‘scholar’

El paquete “scholar” de R nos facilita extraer el historial de citación de autores que cuenten con un perfil en “Google Scholar Profiles”. Adicionalmente, podemos comparar dos o más autores. Para observar la utilidad de esta herramienta para los investigadores, voy a analizar la data de John Mingers. Mingers es un investigador de mi interés por cuanto trabaja en una de las áreas que es fundamental para mi propia investigación. Las multimetodologías.

Lo primero que hago es ubicar la identifcación del perfil de Mingers en Google Scholar Profile. Su id es “umNKYdgAAAAJ&hl”.


# obtengo el paquete
library(scholar)
# establezco id
id <- "umNKYdgAAAAJ&hl"

# obtengo el perfil
l <- get_profile(id)

Puedo iniciar mi análisis sobre Mingers a partir de la información extraída del perfil con este paquete

l$name
[1] "John Mingers"
l$affiliation
[1] "University of Kent"

El factor h, h-index o índice h, se toma como un indicador del peso que un autor tiene en una comunidad científica dada. Es su repercusión. Veamos el índice “h” de Mingers.

l$h_index
[1] 65
l$i10_index
[1] 147

La interpretación del índice h es simple: Mingers ha recibido 65 o más citas sus publicaciones. Es un autor altamente citado. No se trata de un promedio de citas. Lo que el índice nos señala es que en todas sus publicaciones hay un punto en el que Mingers recibe 65 o más citas.

Se obtienen además otra información de importancia:

names(l)
 [1] "id"          "name"        "affiliation"
 [4] "total_cites" "h_index"     "i10_index"  
 [7] "fields"      "homepage"    "interests"  
[10] "coauthors"  
# interesese de Mingers (areas de investigacion)
l$interests
[1] "OR"               "IS"              
[3] "Systems"          "critical realism"
[5] "bibliometrics"   
# campos de investigacion
l$fields
[1] "verified email at kent.ac.uk - homepage"

Para obtener el número de artículos publicados por Mingers, igualmente el número de revistas en las que ha publicado Mingers:

# articulos publicados
get_num_articles(id)
[1] 284
# numero de publicaciones en la que ha publicado
get_num_distinct_journals(id)
[1] 128
get_oldest_article(id)
[1] 1980

Mingers ha publicado 284 artículos en 128 revistas y su artículo más antiguo de acuerdo con Google Scholar data de 1980.

La función author_position() nos da información sobre la posición de nuestro autor en un conjunto de artículos, particularmente en aquellos en el que nuestro autor escribe con otros. La función nos devuelve un marco de datos (matriz de datos, tabla de datos, data frame), con los autores, los títulos de los artículos, laposición de nuestro autor e igualmente la posición normalizada: de 0 a 1.


authorlist <- get_publications(id)$author
author <- get_profile(id)$name
author_position(authorlist, author)
NA

La función compare_scholars() nos compara el historial de citas de dos o más autores. Veamos como funciona con un ejemplo. Sean los siguientes autores y sus respectivos id.

  • Fran Arckemann, 5gzPytgAAAAJ
  • Jonathan Rosenhead, cTsNbbkAAAAJ
  • Colin Eden, cTsNbbkAAAAJ
  • Richard Ormerod, t-GM1LsAAAAJ

Quiero comparar el historial de citas entre ellos

ids <- c("5gzPytgAAAAJ", "cTsNbbkAAAAJ", 
         "cTsNbbkAAAAJ",
         "t-GM1LsAAAAJ", id)
df <- compare_scholars(ids)

head(df)

La función compare_scholars() nos devuelve un marco de datos con 5 variables. En este caso tenemos un marco de datoss de 210 casos y 5 variables. Las variables son: .

La función get_citation_history() permite obtener el número de citas que un artículo de un autor dado ha tenido en los últimos nueves años.


get_citation_history(id)
NA

Para ver qué autores (que también aparecen en Google Scholar Profile) han sido co-autor de un académico dado, usamos la función

coauthor_network <- get_coauthors(id)

coauthor_network
NA

Si los co-autores no aparecen listados en el perfil del autor de interés, la función devuelve “NA”-. Es lo que ocurre con Mingers. Pero si intentamos con Ormerod obtenemops un resultado diferente.

# Richard Ormerod
coauthor_network <- get_coauthors("t-GM1LsAAAAJ")

head(coauthor_network)
NA

La información puede visualizarse

plot_coauthors(coauthor_network)
Warning: Removed 14 rows containing missing values
(geom_point).

LS0tDQp0aXRsZTogIlBhcXVldGUgJ3NjaG9sYXInIg0Kb3V0cHV0OiBodG1sX25vdGVib29rDQotLS0NCg0KRWwgcGFxdWV0ZSAic2Nob2xhciIgZGUgUiAgbm9zIGZhY2lsaXRhIGV4dHJhZXIgZWwgaGlzdG9yaWFsIGRlIGNpdGFjacOzbiBkZSBhdXRvcmVzIHF1ZSBjdWVudGVuIGNvbiB1biBwZXJmaWwgZW4gIkdvb2dsZSBTY2hvbGFyIFByb2ZpbGVzIi4gQWRpY2lvbmFsbWVudGUsIHBvZGVtb3MgY29tcGFyYXIgZG9zIG8gbcOhcyBhdXRvcmVzLiBQYXJhIG9ic2VydmFyIGxhIHV0aWxpZGFkIGRlIGVzdGEgaGVycmFtaWVudGEgcGFyYSBsb3MgaW52ZXN0aWdhZG9yZXMsIHZveSBhIGFuYWxpemFyIGxhIGRhdGEgZGUgSm9obiBNaW5nZXJzLiBNaW5nZXJzIGVzIHVuIGludmVzdGlnYWRvciBkZSBtaSBpbnRlcsOpcyBwb3IgY3VhbnRvIHRyYWJhamEgZW4gdW5hIGRlIGxhcyDDoXJlYXMgcXVlIGVzIGZ1bmRhbWVudGFsIHBhcmEgbWkgcHJvcGlhIGludmVzdGlnYWNpw7NuLiBMYXMgbXVsdGltZXRvZG9sb2fDrWFzLg0KDQoNCkxvIHByaW1lcm8gcXVlIGhhZ28gZXMgdWJpY2FyIGxhIGlkZW50aWZjYWNpw7NuIGRlbCBwZXJmaWwgZGUgTWluZ2VycyBlbiBHb29nbGUgU2Nob2xhciBQcm9maWxlLiBTdSBpZCBlcyAidW1OS1lkZ0FBQUFKJmhsIi4NCg0KYGBge3J9DQoNCiMgb2J0ZW5nbyBlbCBwYXF1ZXRlDQpsaWJyYXJ5KHNjaG9sYXIpDQojIGVzdGFibGV6Y28gaWQNCmlkIDwtICJ1bU5LWWRnQUFBQUomaGwiDQoNCiMgb2J0ZW5nbyBlbCBwZXJmaWwNCmwgPC0gZ2V0X3Byb2ZpbGUoaWQpDQoNCg0KYGBgDQoNClB1ZWRvIGluaWNpYXIgbWkgYW7DoWxpc2lzIHNvYnJlIE1pbmdlcnMgYSBwYXJ0aXIgZGUgbGEgaW5mb3JtYWNpw7NuIGV4dHJhw61kYSBkZWwgcGVyZmlsIGNvbiBlc3RlIHBhcXVldGUNCg0KYGBge3J9DQpsJG5hbWUNCg0KYGBgDQoNCmBgYHtyfQ0KbCRhZmZpbGlhdGlvbg0KDQpgYGANCkVsIGZhY3RvciBoLCBoLWluZGV4IG8gw61uZGljZSBoLCBzZSB0b21hIGNvbW8gdW4gaW5kaWNhZG9yIGRlbCBwZXNvIHF1ZSB1biBhdXRvciB0aWVuZSBlbiB1bmEgY29tdW5pZGFkIGNpZW50w61maWNhIGRhZGEuIEVzIHN1IHJlcGVyY3VzacOzbi4gVmVhbW9zIGVsIMOtbmRpY2UgImgiIGRlIE1pbmdlcnMuICANCmBgYHtyfQ0KbCRoX2luZGV4DQpsJGkxMF9pbmRleA0KYGBgDQpMYSBpbnRlcnByZXRhY2nDs24gZGVsIMOtbmRpY2UgaCBlcyBzaW1wbGU6IE1pbmdlcnMgaGEgcmVjaWJpZG8gNjUgbyBtw6FzIGNpdGFzIHN1cyBwdWJsaWNhY2lvbmVzLiBFcyB1biBhdXRvciBhbHRhbWVudGUgY2l0YWRvLiBObyBzZSB0cmF0YSBkZSB1biBwcm9tZWRpbyBkZSBjaXRhcy4gTG8gcXVlIGVsIMOtbmRpY2Ugbm9zIHNlw7FhbGEgZXMgcXVlIGVuIHRvZGFzIHN1cyBwdWJsaWNhY2lvbmVzIGhheSB1biBwdW50byBlbiBlbCBxdWUgTWluZ2VycyByZWNpYmUgNjUgbyBtw6FzIGNpdGFzLiANCg0KU2Ugb2J0aWVuZW4gYWRlbcOhcyBvdHJhIGluZm9ybWFjacOzbiBkZSBpbXBvcnRhbmNpYToNCg0KYGBge3J9DQpuYW1lcyhsKQ0KDQojIGludGVyZXNlc2UgZGUgTWluZ2VycyAoYXJlYXMgZGUgaW52ZXN0aWdhY2lvbikNCmwkaW50ZXJlc3RzDQoNCiMgY2FtcG9zIGRlIGludmVzdGlnYWNpb24NCmwkZmllbGRzDQoNCg0KYGBgDQoNClBhcmEgb2J0ZW5lciBlbCBuw7ptZXJvIGRlIGFydMOtY3Vsb3MgcHVibGljYWRvcyBwb3IgTWluZ2VycywgaWd1YWxtZW50ZSBlbCBuw7ptZXJvIGRlIHJldmlzdGFzIGVuIGxhcyBxdWUgaGEgcHVibGljYWRvIE1pbmdlcnM6DQoNCmBgYHtyfQ0KIyBhcnRpY3Vsb3MgcHVibGljYWRvcw0KZ2V0X251bV9hcnRpY2xlcyhpZCkNCg0KIyBudW1lcm8gZGUgcHVibGljYWNpb25lcyBlbiBsYSBxdWUgaGEgcHVibGljYWRvDQpnZXRfbnVtX2Rpc3RpbmN0X2pvdXJuYWxzKGlkKQ0KDQpnZXRfb2xkZXN0X2FydGljbGUoaWQpDQoNCmBgYA0KTWluZ2VycyBoYSBwdWJsaWNhZG8gMjg0IGFydMOtY3Vsb3MgZW4gMTI4IHJldmlzdGFzIHkgc3UgYXJ0w61jdWxvIG3DoXMgYW50aWd1byBkZSBhY3VlcmRvIGNvbiBHb29nbGUgU2Nob2xhciBkYXRhIGRlIDE5ODAuDQoNCkxhIGZ1bmNpw7NuIGF1dGhvcl9wb3NpdGlvbigpIG5vcyBkYSBpbmZvcm1hY2nDs24gc29icmUgbGEgcG9zaWNpw7NuIGRlIG51ZXN0cm8gYXV0b3IgZW4gdW4gY29uanVudG8gZGUgYXJ0w61jdWxvcywgcGFydGljdWxhcm1lbnRlIGVuIGFxdWVsbG9zIGVuIGVsIHF1ZSBudWVzdHJvIGF1dG9yIGVzY3JpYmUgY29uIG90cm9zLiBMYSBmdW5jacOzbiBub3MgZGV2dWVsdmUgdW4gbWFyY28gZGUgZGF0b3MgKG1hdHJpeiBkZSBkYXRvcywgdGFibGEgZGUgZGF0b3MsIGRhdGEgZnJhbWUpLCBjb24gbG9zIGF1dG9yZXMsIGxvcyB0w610dWxvcyBkZSBsb3MgYXJ0w61jdWxvcywgbGFwb3NpY2nDs24gZGUgbnVlc3RybyBhdXRvciBlIGlndWFsbWVudGUgbGEgcG9zaWNpw7NuIG5vcm1hbGl6YWRhOiBkZSAwIGEgMS4NCg0KYGBge3J9DQoNCmF1dGhvcmxpc3QgPC0gZ2V0X3B1YmxpY2F0aW9ucyhpZCkkYXV0aG9yDQphdXRob3IgPC0gZ2V0X3Byb2ZpbGUoaWQpJG5hbWUNCmF1dGhvcl9wb3NpdGlvbihhdXRob3JsaXN0LCBhdXRob3IpDQoNCmBgYA0KTGEgZnVuY2nDs24gY29tcGFyZV9zY2hvbGFycygpIG5vcyBjb21wYXJhIGVsIGhpc3RvcmlhbCBkZSBjaXRhcyBkZSBkb3MgbyBtw6FzIGF1dG9yZXMuIFZlYW1vcyBjb21vIGZ1bmNpb25hIGNvbiB1biBlamVtcGxvLiBTZWFuIGxvcyBzaWd1aWVudGVzIGF1dG9yZXMgeSBzdXMgcmVzcGVjdGl2b3MgaWQuIA0KDQorIEZyYW4gQXJja2VtYW5uLCA1Z3pQeXRnQUFBQUoNCisgSm9uYXRoYW4gUm9zZW5oZWFkLCBjVHNOYmJrQUFBQUoNCisgQ29saW4gRWRlbiwgY1RzTmJia0FBQUFKDQorIFJpY2hhcmQgT3JtZXJvZCwgdC1HTTFMc0FBQUFKDQoNClF1aWVybyBjb21wYXJhciBlbCBoaXN0b3JpYWwgZGUgY2l0YXMgZW50cmUgZWxsb3MNCg0KYGBge3J9DQppZHMgPC0gYygiNWd6UHl0Z0FBQUFKIiwgImNUc05iYmtBQUFBSiIsIA0KICAgICAgICAgImNUc05iYmtBQUFBSiIsDQogICAgICAgICAidC1HTTFMc0FBQUFKIiwgaWQpDQpkZiA8LSBjb21wYXJlX3NjaG9sYXJzKGlkcykNCg0KaGVhZChkZikNCmBgYA0KDQpMYSBmdW5jacOzbiBjb21wYXJlX3NjaG9sYXJzKCkgbm9zIGRldnVlbHZlIHVuIG1hcmNvIGRlIGRhdG9zIGNvbiA1IHZhcmlhYmxlcy4gRW4gZXN0ZSBjYXNvIHRlbmVtb3MgdW4gbWFyY28gZGUgZGF0b3NzIGRlIDIxMCBjYXNvcyB5IDUgdmFyaWFibGVzLiBMYXMgdmFyaWFibGVzIHNvbjogYHIgZ2xpbXBzZShkZilgLg0KDQpMYSBmdW5jacOzbiBnZXRfY2l0YXRpb25faGlzdG9yeSgpIHBlcm1pdGUgb2J0ZW5lciBlbCBuw7ptZXJvIGRlIGNpdGFzIHF1ZSB1biBhcnTDrWN1bG8gZGUgdW4gYXV0b3IgZGFkbyBoYSB0ZW5pZG8gZW4gbG9zIMO6bHRpbW9zIG51ZXZlcyBhw7Fvcy4gDQoNCg0KYGBge3J9DQoNCmdldF9jaXRhdGlvbl9oaXN0b3J5KGlkKQ0KDQpgYGANCg0KUGFyYSB2ZXIgcXXDqSBhdXRvcmVzIChxdWUgdGFtYmnDqW4gYXBhcmVjZW4gZW4gR29vZ2xlIFNjaG9sYXIgUHJvZmlsZSkgaGFuIHNpZG8gY28tYXV0b3IgZGUgdW4gYWNhZMOpbWljbyBkYWRvLCB1c2Ftb3MgbGEgZnVuY2nDs24gDQoNCmBgYHtyfQ0KY29hdXRob3JfbmV0d29yayA8LSBnZXRfY29hdXRob3JzKGlkKQ0KDQpjb2F1dGhvcl9uZXR3b3JrDQoNCmBgYA0KDQpTaSBsb3MgY28tYXV0b3JlcyBubyBhcGFyZWNlbiBsaXN0YWRvcyBlbiBlbCBwZXJmaWwgZGVsIGF1dG9yIGRlIGludGVyw6lzLCBsYSBmdW5jacOzbiBkZXZ1ZWx2ZSAiTkEiLS4gRXMgbG8gcXVlIG9jdXJyZSBjb24gTWluZ2Vycy4gUGVybyBzaSBpbnRlbnRhbW9zIGNvbiBPcm1lcm9kIG9idGVuZW1vcHMgdW4gcmVzdWx0YWRvIGRpZmVyZW50ZS4NCg0KYGBge3J9DQojIFJpY2hhcmQgT3JtZXJvZA0KY29hdXRob3JfbmV0d29yayA8LSBnZXRfY29hdXRob3JzKCJ0LUdNMUxzQUFBQUoiKQ0KDQpoZWFkKGNvYXV0aG9yX25ldHdvcmspDQoNCmBgYA0KDQpMYSBpbmZvcm1hY2nDs24gcHVlZGUgdmlzdWFsaXphcnNlDQpgYGB7ciwgZmlnLndpZHRoPTl9DQpwbG90X2NvYXV0aG9ycyhjb2F1dGhvcl9uZXR3b3JrKQ0KDQpgYGANCg0K