Skip to content

Instantly share code, notes, and snippets.

@restrepo
Last active August 29, 2015 13:56
Show Gist options
  • Save restrepo/8967336 to your computer and use it in GitHub Desktop.
Save restrepo/8967336 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"metadata": {
"name": "Cuartiles-resumen"
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "heading",
"level": 1,
"metadata": {},
"source": "Cuartiles Grupos A, Instituto de F\u00edsica UdeA"
},
{
"cell_type": "markdown",
"metadata": {},
"source": "Fuentes: S\u00e1lida en excel de las categor\u00edas de [SJR](http://www.scimagojr.com/journalrank.php), con algunas entradas manuales de: [ISI-Thompson](http://aplicacionesbiblioteca.udea.edu.co:2253/JCR/JCR) (accesible desde la UdeA): [Cuartiles](https://docs.google.com/spreadsheet/ccc?key=0AuLa_xuSIEvxdHk4Tk9GczNxdFRTYkd5YlhHVFFQZkE&usp=sharing)."
},
{
"cell_type": "code",
"collapsed": false,
"input": "cd gssis/utilities/",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "/home/ipython/gssis/utilities\n"
}
],
"prompt_number": 1
},
{
"cell_type": "markdown",
"metadata": {},
"source": "Instale el programa `gssis`, y en particular el m\u00f3dulo `cvsreader` de m\u00e1s abajo, desde: https://github.com/rescolo/gssis "
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": "Cargue datos"
},
{
"cell_type": "code",
"collapsed": false,
"input": "from cvsreader import *\ndef loaddf(google_gss_key,google_gss_sheet=0):\n return read_google_cvs(gss_key=google_gss_key,gss_sheet=google_gss_sheet,gss_query='select *')\n\nIndicadores={'Art\u00edculos':'0AjqGPI5Q_Ez6dDA3ajhtYVVDOWdBckVhWm1MSFRET1E'} \nIndicadores['Cuartiles']=\"0AuLa_xuSIEvxdHk4Tk9GczNxdFRTYkd5YlhHVFFQZkE\"\n\narticulos=loaddf(Indicadores['Art\u00edculos'])\npublicadas=articulos[articulos['ISSN']!='0000-0000'].reset_index(drop=True)\n\ncuartiles=loaddf(Indicadores['Cuartiles'])\n#fix missing leading 0's in ISSN\ncuartiles['ISSN']=[re.sub('^([0-9]{4})$','0000\\\\1',i) for i in cuartiles['ISSN']]\ncuartiles['ISSN']=[re.sub('^([0-9]{5})$','000\\\\1',i) for i in cuartiles['ISSN']]\ncuartiles['ISSN']=[re.sub('^([0-9]{6})$','00\\\\1',i) for i in cuartiles['ISSN']]\ncuartiles['ISSN']=[re.sub('^([0-9]{7})$','0\\\\1',i) for i in cuartiles['ISSN']]\n#fix ISSN hypenathion\ncuartiles['ISSN']=[re.sub('^([0-9]{4})','\\\\1-',i) for i in cuartiles['ISSN']]\n",
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 2
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": "Adicione cuartiles a la tabla de art\u00edculos"
},
{
"cell_type": "markdown",
"metadata": {},
"source": "Escoja el cuart\u00edl m\u00e1s alto entre ISI y Scopus"
},
{
"cell_type": "code",
"collapsed": false,
"input": "publicadas['Cuartiles']=''\npublicadas['Categorias']=''\nfor i in range(len(publicadas)):\n journal=cuartiles[cuartiles['ISSN']==publicadas['ISSN'][i]].sort('Quartile').reset_index(drop=True)\n if journal:\n publicadas['Cuartiles'][i]=journal['Quartile'][0]\n publicadas['Categorias'][i]=journal['Categories'][0]\n ",
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 3
},
{
"cell_type": "markdown",
"metadata": {},
"source": "Defina Grupos y a\u00f1os de publicaci\u00f3n"
},
{
"cell_type": "code",
"collapsed": false,
"input": "grupos={'GFIF':'Grupo de Fenomenolog\u00eda de Interacciones Fundamentales',\n 'GFAM':'Grupo de F\u00edsica At\u00f3mica y Molecular',\n 'GMC':'Grupo de Materia Condensada',\n 'GOF':'Grupo de \u00d3ptica y Fot\u00f3nica',\n 'GES':'Grupo de Estado S\u00f3lido','MS':'Magnetismo y Simulaci\u00f3n'}\nyears=[2012,2013]\ndf=pd.DataFrame(data=None,columns=['Grupo','Q1(2012)','Q2(2012)','Q3(2012)','Q4(2012)','Total(2012)',\n 'Q1(2013)','Q2(2013)','Q3(2013)','Q4(2013)','Total(2013)',])\nfor grupo in grupos.keys():\n pb=publicadas[publicadas['Grupo'].str.contains(grupo)].reset_index(drop=True)\n entry={'Grupo':grupos[grupo]}\n for year in years:\n crtls=pb[pb['A\u00f1o']==year]['Cuartiles'].value_counts()\n crtlsd=crtls.to_dict()\n total=0\n for i in range(1,5):\n if crtlsd.has_key('Q%d' %i):\n entry['Q%d(%d)' %(i,year)]=crtls['Q%d' %i]\n total=total+crtls['Q%d' %i]\n else:\n entry['Q%d(%d)' %(i,year)]=0\n \n \n entry['Total(%d)' %year]=total\n \n df=df.append(entry,ignore_index=True) ",
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 4
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": "Resultados:"
},
{
"cell_type": "code",
"collapsed": false,
"input": "df",
"language": "python",
"metadata": {},
"outputs": [
{
"html": "<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n<table border=\"1\" class=\"dataframe\">\n <thead>\n <tr style=\"text-align: right;\">\n <th></th>\n <th>Grupo</th>\n <th>Q1(2012)</th>\n <th>Q2(2012)</th>\n <th>Q3(2012)</th>\n <th>Q4(2012)</th>\n <th>Total(2012)</th>\n <th>Q1(2013)</th>\n <th>Q2(2013)</th>\n <th>Q3(2013)</th>\n <th>Q4(2013)</th>\n <th>Total(2013)</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>0</th>\n <td> Grupo de Estado S\u00f3lido</td>\n <td> 5</td>\n <td> 2</td>\n <td> 0</td>\n <td> 0</td>\n <td> 7</td>\n <td> 3</td>\n <td> 5</td>\n <td> 4</td>\n <td> 2</td>\n <td> 14</td>\n </tr>\n <tr>\n <th>1</th>\n <td> Grupo de F\u00edsica At\u00f3mica y Molecular</td>\n <td> 3</td>\n <td> 0</td>\n <td> 0</td>\n <td> 4</td>\n <td> 7</td>\n <td> 4</td>\n <td> 1</td>\n <td> 0</td>\n <td> 0</td>\n <td> 5</td>\n </tr>\n <tr>\n <th>2</th>\n <td> Grupo de Materia Condensada</td>\n <td> 11</td>\n <td> 17</td>\n <td> 0</td>\n <td> 1</td>\n <td> 29</td>\n <td> 3</td>\n <td> 8</td>\n <td> 0</td>\n <td> 0</td>\n <td> 11</td>\n </tr>\n <tr>\n <th>3</th>\n <td> Grupo de \u00d3ptica y Fot\u00f3nica</td>\n <td> 4</td>\n <td> 1</td>\n <td> 0</td>\n <td> 0</td>\n <td> 5</td>\n <td> 4</td>\n <td> 0</td>\n <td> 0</td>\n <td> 0</td>\n <td> 4</td>\n </tr>\n <tr>\n <th>4</th>\n <td> Grupo de Fenomenolog\u00eda de Interacciones Fundam...</td>\n <td> 6</td>\n <td> 0</td>\n <td> 1</td>\n <td> 0</td>\n <td> 7</td>\n <td> 10</td>\n <td> 0</td>\n <td> 0</td>\n <td> 0</td>\n <td> 10</td>\n </tr>\n <tr>\n <th>5</th>\n <td> Magnetismo y Simulaci\u00f3n</td>\n <td> 1</td>\n <td> 0</td>\n <td> 3</td>\n <td> 0</td>\n <td> 4</td>\n <td> 0</td>\n <td> 0</td>\n <td> 0</td>\n <td> 0</td>\n <td> 0</td>\n </tr>\n </tbody>\n</table>\n</div>",
"metadata": {},
"output_type": "pyout",
"prompt_number": 5,
"text": " Grupo Q1(2012) Q2(2012) \\\n0 Grupo de Estado S\u00f3lido 5 2 \n1 Grupo de F\u00edsica At\u00f3mica y Molecular 3 0 \n2 Grupo de Materia Condensada 11 17 \n3 Grupo de \u00d3ptica y Fot\u00f3nica 4 1 \n4 Grupo de Fenomenolog\u00eda de Interacciones Fundam... 6 0 \n5 Magnetismo y Simulaci\u00f3n 1 0 \n\n Q3(2012) Q4(2012) Total(2012) Q1(2013) Q2(2013) Q3(2013) Q4(2013) \\\n0 0 0 7 3 5 4 2 \n1 0 4 7 4 1 0 0 \n2 0 1 29 3 8 0 0 \n3 0 0 5 4 0 0 0 \n4 1 0 7 10 0 0 0 \n5 3 0 4 0 0 0 0 \n\n Total(2013) \n0 14 \n1 5 \n2 11 \n3 4 \n4 10 \n5 0 "
}
],
"prompt_number": 5
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": "Conclusiones"
},
{
"cell_type": "heading",
"level": 4,
"metadata": {},
"source": "Porcentaje de art\u00edculo ISI o Scopus en Q1:"
},
{
"cell_type": "code",
"collapsed": false,
"input": "#for year in years\nyear=2012\nfor year in years:\n print '%d: %g' %(year,(df['Q1(%d)' %year].values.sum()/float(df['Total(%d)' %year].values.sum())*100))+'%'",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "2012: 50.8475%\n2013: 54.5455%\n"
}
],
"prompt_number": 6
}
],
"metadata": {}
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment