py_thesis_toolbox
Main repository : https://gogs.alibellamine.me/alibell/py_thesis_toolbox/
Outils d'analyse des données de thèses.
Applique une description des données suivi d'une série de tests univariés.
Installation du plugin
git clone https://gogs.alibellamine.me/alibell/py_thesis_toolbox.git
cd py_thesis_toolbox
pip install -r requirements.txt
pip install .
Utilisation
Analyses d'un jeu de donnée
L'analyse d'un jeu de données procède aux traitements suivant :
- Analyse descriptive : moyenne, nombre de sujet, médiane, intervales inter-quartiles
- Analyse explicative descriptive
- Application de test lors de l'analyse explicative descriptive
@TODO : Implémenter la création d'un modèle multivariés
from thesis_analysis import analyseStatistiques
analyses = analyseStatistiques(df)
analyses.analyse_univarie(
variable_interet,
variables_explicatives
)
variable_interet
La variable variable d'intérêt comprend un dictionnaire décrivant une liste de variables qualitatives ou quantitative.
Le dictionnaire doit être de la forme :
{
nom_de_variable:type_de_variable["qualitative","quantitative"]
...
}
variables_explicatives
Liste de variables explicatives.
L'ensemble des variables doit être de type qualitatif.
Il s'agit d'une liste :
[
nom_de_variable
...
]
Application d'un test spécifique
from thesis_analysis.test import testQualitatif, testQuantitatif
test = testQualitatif(df, y, x)
test.best_test()
Applique pour un jeu x et y le meilleur test possible.
Paramètres :
- df : DataFrame contenant l'ensemble du jeu de données
- y : variable d'intérêt sur laquelle on mesure l'impact de la variable x
- x : variable dont on mesure l'impact sur y
La fonction best_test détermine le meilleur test applicable aux données.
Il est possible d'executer une série de test manuellement.
La liste des test peut être obtenue en éxecutant :
dir(test)
Restitution d'une analyse dans un tableau
from thesis_analysis import analyseStatistiques
from thesis_analysis import genererTableau
# Analyse du jeu de données
analyses = analyseStatistiques(df)
resultat = analyses.analyse_univarie(
variable_interet,
variables_explicatives
)
# Ecriture du tableau
tableau = genererTableau(resultat)
tableau.tableau_descriptif("tableau.xlsx", variables, axes, format_sortie = "xlsx") # Tableau descriptif, souvent table 1
tableau.tableau_detail_variable("tableau.xlsx", variable, axes, format_sortie = "xlsx") # Tableau détaillé : analyse d'une variable
Types de tableaux
Il existe 2 types de tableau :
- Le tableau descriptif :
- Il correspond essentiellement au tableau 1 des publications scientifiques. Il décrit un ensemble de variables, chacunes dans une ou plusieurs lignes dédiés, éventuellement croisé avec un ou plusieurs axes (- ie - des variables qualitatives) qui sont représentés dans une ou plusieurs colonnes séparées
- Il est généré à l'aide de la méthode : tableau_descriptif
- Le tableau détaillé :
- Il correspond à un tableau détaillé pour une variable, il décrit pour uen variable donnée l'ensemble des caractéristiques en colonnes et pour chaque variables avec laquelle cette axe avec laquelle cette variable est croisé les principaux indicateurs est resulté de test. Ainsi chaque axe est analysé sur une ou plusieurs lignes dédiés.
- Il est généré à l'aide de la méthode : tableau_detail_variable
Paramètre de la classe genererTableau
genererTableau(data, precision = 2, quantitative_string_format = "{mean:.2f} +/- {std:.2f} ({n})", qualitative_string_format = "{n} ({p:.2%})")
- data : données à afficher, il s'agit d'un dictionnaire produit grace à la classe analyseStatistiques
- precision : degré de précision en décimal des résultats affichés
- quantitative_string_format : format d'affichage des valeurs pour les variable quantitatives dans le tableau descriptif
- qualitative_string_format : format d'affichage des valeurs pour les variable qualitatives dans le tableau descriptif
Paramètre de la génération de tableau : méthodes tableau_descriptif et tableau_detail_variable
tableau.tableau_descriptif(chemin = "tableau.xlsx", variables, axes, format_sortie = "xlsx")
tableau.tableau_detail_variable(chemin = "tableau.xlsx", variable, axes, format_sortie = "xlsx")
- chemin : Chemin du fichier de sortie :
- Ecrit le fichier dans le chemin indiqué
- Si le chemin prend la valeur None : est renvoyé un buffer : soit un objet StringIO ou BytesIO si un fichier texte ou binaire est généré, soit une liste si le format "raw" est sélectionné
- variables : variables à analyses, la méthode quantitative_string_format analyse plusieurs variables à la fois
- variable (pour tableau_detail_variable) : variable à analyse, la méthode qualitative_string_format n'analyse qu'une seule variable à la fois
- axes : axes d'analyse à restituer
- format_sortie : format de sortie du tableau, formats attendus :
- csv
- tsv
- xlsx
- ods
- raw : si raw est sélectioné, le chemin attendu est None, dans ce cas une liste est directement retourné. Cela peut-être utile pour insérer plusieurs tableaux dans des feuilles différentes d'un même fichier XLSX / ODS.