No description
Find a file
2023-03-16 11:57:39 +01:00
data Initial commit 2023-03-16 11:57:39 +01:00
src Initial commit 2023-03-16 11:57:39 +01:00
README.Md Initial commit 2023-03-16 11:57:39 +01:00

Qué hay aquí

De momento he hecho varios de los contrastes que listamos en el archivo de Google Docs que creó Jordi (indicado por OK verde al final de cada pregunta en ese mismo documento).

No he escrito texto. Simplemente el código tanto de las figuras como de los tests.

En cuanto a las figuras tenemos el problema de que al compilar el .pdf aparece el nombre de la figura en el cuerpo del texto (como nombre-de-figura-que-molesta.pdf) y aún tengo que averiguar cómo evitar que eso pase.

En lo relativo al resto de código que aparece en el PDF compilado, es cuestión de decidir qué dejar/quitar o dejar/quitar todo. Yo supongo que es mejor quitarlo todo, redactar algo, y dejar las figuras. Quizá podemos dejar el stdout de los chunks donde se ejecutan los tests estadísticos.

Aquí encontraréis:

/src

  • Informe-KIDSCORONA.Rmd este es el archivo que contiene el código del proyecto. Cargo los .csv en /data utilizando Python (utilizando un entorno virtual de python3 instanciado en la línea 11, sólo requiere instalar pandas). El resto (producción de figuras, tests) es R.
  • Informe-KIDSCORONA.pdf generado a partir de .Rmd
  • Informe-KIDSCORONA.log del proceso de generar .pdf

/data

  • combined-1 Encuesta de salud pediátrica en confinamiento CAT + ESP
  • 33116 Embarazo y COVID-19

Sobre formato de archivos en /data

metadata.json

{"{surveyId}": {
	"main_sentences": {"{questionId}": 'Texto de la pregunta'},
	"metadata": {"{questionId}": {
		"type": "any({'matrix', 'numeric', 'simple', 'open'})",
		"is_multiple": "{False, True} sólo si type={'matrix', 'simple'} \
									 if True ==> answers in {surveyId}_multi_data.json",
		"metadata": "* if type='matrix' --> {'subquestions': {someId: 'texto de la subpregunta'}, \
											 'options': {someId: option}} \
			(en 'answers', if answer=='is_matrix' ó 'is_multi_matrix', las respuestas son una lista de listas [[0],[2],[1],[0],...] donde el índice de la sublista equivale al índice de la subpregunta, y el valor en la sublista al índice de la respuesta en 'options', por ejemplo [[0],[2],[1],[0],...][0] será la respuesta a la subpregunta 0, que en este caso es la opción 0 i.e. [0]) PERO si se salta alguna respuesta, será un <dict> con 'key' = Id de subpregunta por ejemplo: \
			{'0':[0], '1':[2], '2':[2], '3':[3], '4':[3], '5':[2], '6':[3], '7':[2], '8':[2], '9':[2], '10':[1], '11':[3], '13':[0]} \
				* if type='numeric' --> 'units' ==> {someId: units} \
				* if type='open' --> {someId: format} ó {someId: 'extra'} ('extra' significa que es una pregunta a mayores, del tipo 'Algo más que añadir?', o similar) \
				* if type='simple' --> 'options' ==> {someId: option} \
							  'none_option' --> si tiene opción de no marcar ninguna de las anteriores \
							  'other_option' --> si permite responder otra cosa a mayores"
			}
		}
	}
}

{surveyId}_matrix_data.json

{
	"matrix_dict": "incluye respuestas a preguntas type='matrix' if 'is_multiple'=False, es decir [[0],[2],[1],[0], ...]; si existe alguna [[0],[0, 2],[1],[0, 3],...] irá en '{surveyId}_multi_data.json'. El formato de <value> es: { '{responseId}': { '{questionId}': answer } }"
}

{surveyId}_multi_data.json

{
	"multi_dict": "incluye respuestas a preguntas type= {'simple', 'matrix'} if 'is_multiple'=True. El formato de <value> es: { '{responseId}': { '{questionId}': answer } }"
}

{surveyId}.csv

indices = ['is_type', responseId0, responseId1, ...]; columns = [questionId0, questionId1, ...].

En fila 'is_type' ==> tipo de pregunta (si tiene al menos 1 respuesta, si no NaN y probablemente se pueda obviar) si 'is_type'=any({'matrix', 'simple'}) la respuesta puede ser {'is_matrix', 'is_multi', 'is_multi_matrix'} en cuyo caso habrá que buscarla en {surveyId}_matrix_data.json ó {surveyId}_multi_data.json por responseId y questionId.