Módulo discusión:Estadísticas de la pandemia de enfermedad por coronavirus de 2019-2020

Contenido de la página no disponible en otros idiomas.
De Wikipedia, la enciclopedia libre

Aviso[editar]

Yo desconocía que los módulos eran tan poderosos, no se andan por las ramas. Enhorabuena a todos los colaboradores de este Módulo.--Jimmy Olano (discusión) 13:27 30 may 2020 (UTC)[responder]

De todos modos que quede constancia de que es un módulo costoso, es decir, que usa bastantes recursos, teniendo en cuenta que se usa en múltiples ocasiones dentro de la misma página de Wikipedia para cargar la información de otra página de Wikidata. Por ejemplo, en los artículos Pandemia de enfermedad por coronavirus de 2020 en América y en Europa se usa para cargar la información de 57 —países— páginas de Wikidata diferentes. Motivo por el cual se recomienda su uso con moderación. Es por eso que en Anexo:Estadísticas de la pandemia de enfermedad por coronavirus de 2019-2020 ocasionalmente todavía aparecen errores, porque se intenta cargar ni más ni menos que 230 páginas de Wikidata, y empieza a fallar alrededor de las doscientas (ya no por falta de memoria, pero sí por límitación de tiempo). -- Leoncastro (discusión) 13:44 30 may 2020 (UTC)[responder]

Modificación[editar]

@Leoncastro: Con mi modificación encuentro un menor uso de memoria (el cual está al límite en Pandemia de enfermedad por coronavirus de 2020 en América) y, además, encuentro que alcanza a cargar un poco más en Anexo:Estadísticas de la pandemia de enfermedad por coronavirus de 2019-2020. En esta discusión indicas que hay problema cuando hay varios valores almacenados, sin embargo, con mi modificación debería tomar solo el último valor, tal como ahora. ¿Me podrías indicar que problema tiene? --Julián L. Páez (discusión) 17:44 3 sep 2020 (UTC)[responder]

@Julian leonardo paez, tus modificaciones hacen que no se tome el último valor, sino el primer valor marcado como nivel preferido. Un ejemplo de ello está en los valores de Noruega: tu versión se detiene en los 8135 casos (valor de 12 may 2020), mientras que la última cifra es la que se muestra con mi versión que son 9850 casos (valor de 14 ago 2020, tres meses más tarde). Hay casos más drásticos como el de Malasia, que pasa de los 9129 casos más recientes a apenas 18 casos que había en febrero. Efectivamente tomando un único valor preferido se hace menos uso de memoria y de tiempo, pero no se está mostrando el último valor (donde para ello hace falta tomarlos todos, ordenarlos y sacar el último; lo cual evidentemente consume más recursos). -- Leoncastro (discusión) 19:41 3 sep 2020 (UTC)[responder]
@Leoncastro: Entiendo. Habría que cambiar mw.wikibase.getBestStatements por mw.wikibase.getAllStatements. Cabe decir que son problemas puntuales en Wikidata, por lo que, aún con ese cambio, se mantienen las ventajas. --Julián L. Páez (discusión) 21:59 3 sep 2020 (UTC)[responder]
Por cierto, tal como está ahorita, no los ordena, si no que toma el último valor que esté en Wikidata, el cual normalmente corresponde a la última fecha. --Julián L. Páez (discusión) 22:04 3 sep 2020 (UTC)[responder]
@Julian leonardo paez, pero getAllStatements tomaría todos los valores, no solamente uno. ¿En Wikidata no se almacenan los valores ordenados? Pensaba que sí. Como sea, la función ModuloWikidata.propiedad opera la variable interna tablaOrdenada, la cual se puede ordenar con el parámetro adicional ordenar=por fecha; aunque esto sería complicar todavía más el consumo de recursos. -- Leoncastro (discusión) 22:51 3 sep 2020 (UTC)[responder]
@Leoncastro: en la variable statements se almacenan y con statements[#statements] se toma solo la última declaración. Por otro lado, en Wikidata no necesariamente se almacenan ordenados, pero lo normal es que el último valor corresponda con el más reciente. Mejor no complicarlo más y que siga tomando el último valor. --Julián L. Páez (discusión) 23:56 3 sep 2020 (UTC)[responder]
@Julian leonardo paez, pues si con getAllStatements se arregla la edición que tuve que deshacer por el problema de los preferidos, sugiero que me deshagas y apliques esa modificación para recuperar las mejoras de rendimiento. -- Leoncastro (discusión) 13:32 4 sep 2020 (UTC)[responder]
✓ Hecho. --Julián L. Páez (discusión) 17:36 4 sep 2020 (UTC)[responder]

Correcciones en general[editar]

Por lo que fuí viendo la plantilla trae mas problemas que soluciones. Si bien como módulo tiene un montón de mejoras y utilidades, en este caso en particular no he visto que mejore en nada a la tabla que se realiza manualmente desde el principio. Lo último fue quitarle las banderas, que para algunos puede parecer un mínimo detalle pero para mí en particular no. Me era mas sencillo ubicar rapidamente un país de esa forma, ahora hay que mirar toda la lista. Obviamente optaré para modificar las mismas, no por orden de casos sino alfabeticamente, para el reorden esta el wikitable sortable. Digo esto en pos de que, en vez de dejar la tabla como estaba y comenzar a quitar todas las extracciones innecesarias, se empezó por donde no se quería. La idea de la tabla era justamente no modificar la tabla y adecuar el resto para que funcione y no falle en la carga (en Europa se redujo la tabla, pero en el resto funcionaba perfecto) y sí, por ejemplo, empezar a reducir una decena de secciones de un solo párrafo que son extraídos de su artículo principal. Pero en fin, ya no me dedicare a ello por lo que espero tengan suerte en encontrar algo que mejore la misma (que por cierto estan bastante desactualizadas en wikidata) sino quedará en un simple copiar y pegar la tabla que se hace manual y evitar todo este dolor de cabeza.--Claudieg (discusión) 04:49 4 sep 2020 (UTC)[responder]

@Claudieg, la tabla manual no va a tener las penalizaciones de rendimiento que supone importar valores desde Wikidata porque usa valores locales. El problema del módulo está precisamente en el abuso al importar centenares de valores desde Wikidata, cuando hay un límite técnico para ello. De todos modos hay un punto intermedio entre poner la tabla manual y poner la plantilla importando valores desde Wikidata, y es el uso de la plantilla para establecer valores locales. Se puede hacer prácticamente lo mismo de tres formas diferentes:
  1. Con la tabla manual, aunque contiene expresiones que pueden complicar su mantenimiento, como
    ! style="text-align:left" |{{bandera|Brasil}} [[Pandemia de enfermedad por coronavirus de 2020 en Brasil|Brasil]]
    !América
    |{{formatnum|4001422}} || {{formatnum|{{#expr:(4001422)/209.3 round 1}}}}
    |{{formatnum|123899}} || {{#expr:100*(123899)/(4001422) round 1}} % || {{#expr:(123899)/209.3 round 1}}
    |{{formatnum|3210405}} || {{#expr:100*(3210405)/(4001422) round 1}} %
    
    Nota: datos de Brasil en el ejemplo indicado.
  2. Con la plantilla en modo automático, tomando los datos desde Wikidata —lo cual causa problemas cuando se emplea demasiadas veces— mediante
    {{Fila de tabla de estadísticas de la pandemia de enfermedad por coronavirus de 2019-2020
    |país = Brasil
    |población = 211420000
    |entidad = Q86597695
    }}
    
  3. Con la misma plantilla usando valores locales
    {{Fila de tabla de estadísticas de la pandemia de enfermedad por coronavirus de 2019-2020
    |país = Brasil
    |población = 211420000
    |confirmados = 4001422
    |fallecidos = 123899
    |recuperados = 3210405
    }}
    
La plantilla surgió para homogeneizar los datos y simplificar los cálculos y el código, y, adicionalmente, se transformó en módulo para permitir la importación moderada de los datos desde Wikidata de forma automática. -- Leoncastro (discusión) 14:11 4 sep 2020 (UTC)[responder]
Por cierto, con todo esto quiero decir que, si se usa la plantilla de forma automática con moderación, o si se usa con valores locales, seguramente se puedan recuperar las banderas (y quizás agregar más columnas como indicar el continente o los casos activos) y se pueda olvidar de aparezcan problemas de rendimiento, porque no habrá ninguno. Claro está, insisto, siempre que se use con moderación o con valores locales. Porque lo de cargar más de doscientas filas de datos (que son otras tantas páginas de Wikidata) no me parece precisamente moderación. Y si no, traten de abrir las respectivas páginas en su navegador y díganme que no les va un poquito lento. -- Leoncastro (discusión) 14:21 4 sep 2020 (UTC)[responder]
@Claudieg y Leoncastro: propongo que se vuelvan a poner las banderas. Creo que solo habría problema en Anexo:Estadísticas de la pandemia de enfermedad por coronavirus de 2019-2020, pero no creo que se salve del borrado. Por otro lado, yo estuve pensando en que se podría adaptar al formato de Pandemia de enfermedad por coronavirus de 2019-2020#Número de casos añadiendo |ref= y |continente=, ambos opcionales. Si se define |continente= se mostraría en lugar de la población. Habría que evaluar que tanto se puede importar de Wikidata y que tanto habría que actualizar manualmente.--Julián L. Páez (discusión) 18:10 4 sep 2020 (UTC)[responder]
Por mí de acuerdo; está en línea con lo que mencionaba anteriormente. Los parámetros se podrían tomar todos de Wikidata: el valor del |país= está directamente bajo la propiedad P17, y usando el resultado de este se pueden obtener también el |continente= (de su P30) y la |población= (valor más reciente de su P1082), aunque esto implica cargar también los datos del «Q» del país, por lo que seguramente se complica todavía más el rendimiento; los casos confirmados, fallecidos y recuperados se están tomando de P1603, P1120 y P8010, respectivamente y el resto de cifras se obtienen mediante cálculo matemático. -- Leoncastro (discusión) 12:07 6 sep 2020 (UTC)[responder]
Creo que en lugar de tomar |país= de país (P17), habría que hacerlo de ubicación (P276), ya que hay casos como pandemia de enfermedad por coronavirus de 2020 en Hong Kong (Q84146057), o habría que definirlos manualmente. Por otro lado, creo que también se podría agregar |activos= con la opción de mostrase. Por último, ya que no hay oposición para volver a poner las banderas, procedo a deshacer la edición. --Julián L. Páez (discusión) 05:03 9 sep 2020 (UTC)[responder]
Vale, ahora entiendo por qué estaba repetido el país en P17 y en P276 en aquellos casos que revisé. Entonces sí, llevas razón en usar la ubicación de P276. El dato de casos activos entra dentro de las cifras que se obtienen mediante cálculo: activos = confirmados – fallecidos – recuperados. Saludos. -- Leoncastro (discusión) 13:45 9 sep 2020 (UTC)[responder]
@Leoncastro: creo que el límite en algunos artículos ya se alcanzó, como se puede ver en Pandemia de COVID-19 en América y Pandemia de COVID-19 en Costa Rica ¿hay algo que se pueda hacer? --ZebaX2010 [PRESS START] 09:07 10 may 2022 (UTC)[responder]
Pero ZebaX2010, el artículo que mencionas no está usando este módulo. Ese artículo de Costa Rica se satura con el uso de {{Gráfica de casos médicos}}, aunque esa es ya otra historia. Mi recomendación sería llevar esa gráfica a un anexo, dada su magnitud. De este modo se individualiza su uso y no satura la página, ni la principal ni la de anexo. Divide y vencerás. -- Leoncastro (discusión) 16:27 10 may 2022 (UTC)[responder]
Pero en Pandemia de COVID-19 en América aparece el error "Ha caducado el tiempo asignado para ejecutar secuencias de comandos (scripts)." donde se utiliza {{Fila de tabla de estadísticas de la pandemia de COVID-19}} que depende de este módulo. --ZebaX2010 [PRESS START] 18:23 10 may 2022 (UTC)[responder]
En el caso del artículo de América se están intentando cargar en memoria los datos de Wikidata de 26 países, a razón de entre 2 y 5 megabytes de datos por cada uno; teniendo en cuenta que el límite de procesamiento de Lua es de 50 MB... pues es normal que se sature. No hay mucho más que hacer en ese caso. La solución puede ser la misma: divide y vencerás. Anexos diferentes para América del Norte, América Central y América del Sur, quizás. La otra opción es poner los datos a mano, sin importarlos automáticamente desde Wikidata. -- Leoncastro (discusión) 21:08 10 may 2022 (UTC)[responder]
Hola. Paso por aquí para avisaros de que también está ocurriendo en Pandemia de COVID-19 en Europa. Además, como se ha borrado la plantilla {{Geodatos Europa}} da un error a la hora de carga la inexistente bandera. Nacaru · Discusión ✉ · 11:45 11 may 2022 (UTC)[responder]