Rodeo facilite l'écriture de rapports avec des équations, du code et des graphes. Il est convertit en markdown et PDF : Rodeo 1.1 - Markdown, Autoupdates, Feedback.
Lorsqu'on met à jour un module, les modifications ne sont pas prises en compte automatiquement dans un notebook. Il faut le recharger. Il existe une extension qui fait ça pour vous : Autoreload des modules sous iPython.
Tableau est une application gratuite dans certains cas qui permet de réaliser facilement des dashboards afin de visualiser rapidement des données avec des graphiques animés.
Module pour faire de l'apprentissage par renforcement : RLPy: A Value-Function-Based Reinforcement Learning Framework for Education and Research. Lire également : Batch Learning from Logged Bandit Feedback through Counterfactual Risk Minimization.
Un article sur TensorFlow : What you wanted to know about TensorFlow.
L'exercice est le suivant : on récupère deux tableaux depuis le site http://www.data.gouv.fr/. On récupère les deux fichiers suivants :
Ministère Libellé Catégorie d'emploi Emploi ETPPLF 1 Affaires étrangères 1101 Titulaires et CDI en administration centrale 3 059 1 Affaires étrangères 1102 Titulaires et CDI dans le réseau 2 895 1 Affaires étrangères 1103 CDD et volontaires internationaux 2 877 1 Affaires étrangères 1104 Militaires 712 1 Affaires étrangères 1105 Agents de droit local 4 962 ...
On cherche à mesurer l'évolution des effectifs entre ces deux années même si la liste des ministères et des catégories évolue.
Le code suivant convertit un tableau Excel au format HTML puis stocke le résultat dans le presse-papier (il suffit donc de faire CTRC+V pour le coller où on veut). La macro convertit la zone sélectionnée au format HTML. Voici ce qu'elle donne :
objectif | Python | VBA |
test | if / else | if .. Then / else / end if |
boucle | for .. in .. | for .. = .. to .. / next |
fonction | def | fonction / end function |
Le code de la fonction doit être copié/collé dans un module (ALT+F11 pour voir le code VBA associé à la feuille). Je n'ai pas implémenté beaucoup de styles mais la fonction est facilement modifiable.
' code à copier dans la feuille Excel Function ColorToHtml(ByVal value As String) As String Dim scolor As String scolor = Trim(Hex(value)) While Len(scolor) < 6 scolor = "0" + scolor Wend scolor = Mid(scolor, 3, 4) + Mid(scolor, 1, 2) ColorToHtml = "#" + scolor End Function Sub range_html_to_cliboard() Set rge = Selection Dim res, line, ce As String res = "<table>" + Chr(10) For i = 1 To rge.Rows.Count line = "<tr>" For j = 1 To rge.Columns.Count ce = "<td style=""" If rge(i, j).Interior.color Then ce = ce + "background-color:" + ColorToHtml(rge(i, j).Interior.color) + ";" End If If rge(i, j).Font.color Then ce = ce + "color:" + ColorToHtml(rge(i, j).Font.color) + ";" End If If rge(i, j).Font.Bold Then ce = ce + "font-weight:bold;" End If ce = ce + """>" ce = ce + rge(i, j).Text + "</td>" line = line + ce Next line = line + "</tr>" res = res + line + Chr(10) Next res = res + "</table>" + Chr(10) ClipBoard_SetData (res) End Sub
La fonction ne marche pas tel quel sur les tableaux créés avec des styles, ni même avec une liste filtrée. Pour cela, il faut copier la zone désirée puis faire deux collages spéciaux, le formatting et les valeurs, au même endroit. On sélectionne ensuite la zone collée puis on appelle la macro décrite ci-dessus.