PROJET AUTOBLOG


blog'o'm0le

source: blog'o'm0le

⇐ retour index

Mise à jour

Mise à jour de la base de données, veuillez patienter...

Automatiser une saisie sur Libre Calc avec une table de correspondance

lundi 26 mai 2014 à 10:17

Passage en revue de deux fonctions bien pratiques pour automatiser la saisie d'informations sur Libre Calc, avec cas concret.

Hier, c'était le rush à partir de 23h pour bricoler le plus rapidement possible des cartes de Strasbourg par bureau de vote et du Bas-Rhin par commune.

J'avais déjà les tracés géographiques de toutes les zones, et le squelette des fichiers de résultats qui allaient être envoyés. La seule difficulté allait être de déterminer rapidement le vainqueur de chaque entité, pour lui rattacher ensuite une couleur hexadécimale.

Concrètement, si dans la commune X le parti Y est arrivé en tête, il faut que dans la colonne "couleur" corresponde à la teinte prévue pour lui.

Y a-t-il une fonction qui peut nous aider dans cette tâche ? Il y en a en fait deux : RECHERCHE() et RECHERCHEV().

Afficher le nom du vainqueur avec RECHERCHE()

Prenons le cas concret ci-dessous. J'ai séparé mes résultats en brut d'un côté et en pourcentage de l'autre, et décidé d'insérer entre les deux une colonne "Vainqueur" et une colonne "Code couleur" :

tuto_recherche1
Cliquez pour agrandir l'image

Pour afficher convenablement le nom du vainqueur, il faut bien décomposer les trois facteurs de la fonction RECHERCHE() :

Dans notre cas,on écrirait donc dans la première cellule vide de la colonne "Vainqueur" :

=RECHERCHE(MAX(J2:AF2),J2:AF2,J1:AF1)

On peut alors vérifier que le nom renvoyé est bien celui de la ligne J1:AF1 correspondant au maximum de la ligne J2:AF2.

L'homme pressé ne manquera alors pas de saisir le coin inférieur droit de sa cellule remplir pour dupliquer la formule à la ligne suivante, sauf que s'il fait ça il se retrouvera avec un chiffre, et non un nom.

tuto_recherche2
Cliquez pour agrandir l'image

Ceci parce que Calc pensera que la colonne de référence des noms J1:AF1 est maintenant J2:AF2. Il faut donc lui expliquer que cette ligne ne bouge jamais, grâce au symbole $.

Notre formule finale sera donc :

=RECHERCHE(MAX(J2:AF2),J2:AF2,J$1:AF$1)

Elle renverra exactement le même résultat pour la première cellule, en revanche on n'aura plus un nombre mais bien un nom sur la deuxième :

tuto_recherche3
Cliquez pour agrandir l'image

Etonnant, non ?

Une table de correspondance avec RECHERCHEV()

Bien, la première étape est réglée. Nous allons maintenant tenter d'utiliser cette table de correspondance, placée juste en-dessous de nos données :

tuto_recherche4
Cliquez pour agrandir l'image

Première sécurité : transformer le résultat de la formule en vrai texte. Pour cela, le plus simple est de copier la colonne "Vainqueur" dans une nouvelle colonne, en faisant un clic droit et en sélectionnant "Collage spécial" :

tuto_recherche5
Cliquez pour agrandir l'image

De là, on va simplement décocher "Tout insérer", ne laisser que "Texte" coché, et cliquer sur OK :

tuto_recherche6
Cliquez pour agrandir l'image

On peut alors vérifier dans la nouvelle colonne qu'on a bien du texte et plus une formule, ce qui va nous permettre de supprimer l'autre :

tuto_recherche7
Cliquez pour agrandir l'image

On peut maintenant utiliser la formule RECHERCHEV(), dont la syntaxe est la suivante :

Appliquée à notre cas, cette formule donne :

=RECHERCHEV(AG2,A$150:B$155,2,0)

On a placé des $ sur les bords de la matrice pour les mêmes raisons que les précédentes. Un cliqué-glissé après, voilà le résultat :

tuto_recherche8
Cliquez pour agrandir l'image

Emballé, c'est pesé !

Remerciements

Merci à Joël Matriche, véritable "excpert", qui m'a aiguillé vers ces formules bien pratiques !

Nono's Songs : Nena - 99 Luft Balons

lundi 26 mai 2014 à 08:00

Les Nono's Songs n'ont pas de but particulier si ce n'est de publier des musiques que j'apprécie.

Je ne donne aucune appréciation, je poste que des musiques, trouvées au détour du Net, ou d'un son/bruit que j'ai pu entendre quelques part ou avec quelqu'un. Ce n'est en aucun cas un signe de "nouveauté" ou un effet de mode quelconque.

Voici le clip officiel de Nena qui nous propose 99 Luft Balons


Neuf conseils pour pratiquer le journalisme de données en presse locale

samedi 24 mai 2014 à 09:24

Passage en revue de quelques bonnes pratiques pour se mettre efficacement au datajournalisme en presse locale.

1. Maîtriser les statistiques

Les statistiques sont un langage à part, un autre code à ajouter aux codes informatiques avec lesquels les datajournalistes jonglent quotidiennement, mais qui ne doit en aucun cas être négligé.

Pourquoi cette insistance sur les statistiques ? Parce que la maîtrise du code, aussi léchée soit-elle, n'empêchera jamais des erreurs qui donneront une image faussée d'un très beau travail.

Connaître les différences entre médiane et moyenne, analyser un échantillon en déciles, comparer les variances, être tatillon sur la manière dont les données ont été collectées, se rappeler que les données traitées ne sont pas objectives, sont autant de connaissances qui empêcheront de faire de belles erreurs et donneront un résultat de meilleure qualité, aussi irréprochable sur le fond que sur la forme.

Plus concrètement

Pour s'y mettre en français, il y a comme bonnes ressources :

Pour ceux qui préfèrent le gratuit et maîtrisent l'anglais, il y a également :

2. Plus près vaut mieux que trop loin

La presse locale a souvent une image de grande proximité de son lectorat, contrairement à la presse nationale qui insiste sur des enjeux beaucoup plus globaux.

La même chose se vérifie sur Internet, où il est assez évident que les internautes marseillais (hormis diaspora de l'Est) ne se connecteront pas en masse sur le site du Républicain Lorrain. Un des intérêts du datajournalisme en presse locale est évidemment d'éclairer des problématiques proches de son lectorat.

Plutôt que d'exploiter le même nouveau jeu de données de datagouv sur lequel vont se ruer quelques géants de Paris, il vaut mieux donc trouver quelque chose qui parle plus à ses lecteurs, quitte à changer son angle d'attaque.

Plus concrètement

Ce qui nous amène directement au point suivant :-)

3. Varier ses sources de données

C'est le défi perpétuel du journaliste de données de presse locale :  trouver des fichiers exploitables à la bonne échelle.

Certains gros stocks comme ceux de datagouv peuvent convenir, à partir du moment où ils sont plus précis que l'échelle départementale. On peut par exemple citer les résultats d'une élection par commune, idéaux pour filtrer uniquement celles qui nous intéressent.

Mais sinon ? Il y a, mais c'est loin d'être le cas partout, les portaux Open Data. Ces derniers peuvent mettre à disposition des données pas forcément trouvables sur les stocks nationaux, mais ils perdent très vite de leur intérêt s'ils ne sont pas mis à jour régulièrement.

On peut également citer des organisations officielles qui ne chargent pas forcément leurs données sur datagouv. Même si ce dernier s'étoffe de plus en plus, il en reste un paquet !

Plus concrètement

Voir le point suivant (promis, c'est la dernière fois ;-)).

4. Contacter dès qu'on le peut des spécialistes

Les spécialistes ont une connaissance très poussée de données exploitables, même s'ils ne les ont pas produites eux-mêmes. Il peut donc être intéressant de les interroger dessus avant toute publication, notamment pour :

Plus concrètement

J'ai deux anecdotes pour illustrer ce conseil :

5. Adapter des exemples

C'est une option incontournable des grandes librairies de cartographie et traitement de données : proposer un tour d'horizon avec des exemples et le code qui va avec.

Il est beaucoup plus facile d'essayer d'adapter ces exemples que de digérer une doc épaisse en espérant ensuite que l'inspiration fasse le reste.

Après tout, regarder des exemples, c'est déjà chercher l'inspiration :-) !

Plus concrètement

Cette carte que j'ai réalisée pour Rue89S est en fait un mix de cet exemple, de celui-ci, de celui-ci et de celui-ci.

6. Discuter des projets en cours avec des confrères

Avoir régulièrement le nez dans les données peut faire prendre de bonnes habitudes, mais demander leur avis à des confrères avant publication ne coûte rien et peut rapporter beaucoup, notamment en :

Plus concrètement

Là encore, j'ai deux anecdotes qui me reviennent :

7. La forme suit la fonction

Ce principe, particulièrement appliqué dans l'industrie, est décrit sous l'angle des infographies dans l'excellent The Functional Art. Alberto Cairo y explique que la forme que prend une infographie suit assez naturellement sa fonction explicative.

De la même façon, je crois qu'il faut considérer une visualisation de données, aussi poussée techniquement soit-elle, que comme une illustration augmentée. Elle doit servir l'angle que l'on a choisi éventuellement en analysant des données, pas l'inverse.

Plus concrètement

Il n'y a rien de pire, dès lors que l'on a passé du temps et de la sueur à produire une dataviz, que de la balancer seule dans un article, sans autre explication, en se disant que les lecteurs comprendront d'eux-mêmes les secrets qu'elle renferme.

Ça ne marche que dans des cas bien précis, et il ne faut jamais s'affranchir d'une bonne analyse qui viendra compléter la performance technique.

En bon exemple d'une thématique que l'on peut avoir dans une rédaction, le journal canadien La Presse a livré un super boulot sur les accidents de la route au Québec. Le truc en plus ? L'option "Faits saillants", qui montre un vrai travail d'analyse.

8. Appliquer le rasoir d'Ockham

Le principe du rasoir d'Ockham peut se résumer ainsi : si on peut faire simple, il faut éviter autant que possible de faire compliqué.

Ça paraît assez évident dit comme ça, mais dans la pratique, la tentation de compliquer, surtout quand on découvre un nouveau jeu de données qu'on ne maîtrise pas encore, est souvent présente.

Plus concrètement

Pour illustrer une évolution d'un indice dans le temps, qu'est-ce qui est le plus optimal ? Un diagramme en barres décrivant cet indice à des années précises, ou une carte choroplèthe ultra soignée ?

Le rasoir d'Ockham vous dira de préférer la première option, et à mon avis à raison. Après tout, il arrive que les cartes ne soient pas la meilleure manière d'illustrer !

9. Le diable est dans les détails

Plus concrètement

En termes de dataviz, les détails peuvent faire toute la différence.

Couleurs, légendes, échelle, zoom, fenêtres interactives, affichage sur support mobile (trop souvent négligé), tout doit être testé et interrogé pour d'éventuels changements.

Organizy, faire ses courses sans se prendre la tête

mercredi 21 mai 2014 à 09:00

Si toi aussi tu écris tes courses sur un bout de papier, que tu le perds ou qu'il se fait manger par ton chien Scruffy (Matt, si tu me lis..), sache que tu n'es pas le seul et que j'ai LA solution pour toi :-) !

Organizy permet en effet de noter sa liste de course dans son smartphone afin de ne plus jamais perdre cette maudite liste de courses !

Organizy-2

Oui mais bon, c'est quand même plus simple un bout de papier et un stylo, ça va plus vite...

Dans l'absolu, je suis d'accord, mais pas là ! Il suffit en effet de taper les trois premières lettres du produit qu'on souhaite acheter pour que l'appli liste les produits qu'on achète VRAIMENT !

Organizy_vos_courses_facilement_android_astuces_gratuit_application

Autres options sympa :

Et d'avance, de rien :)

Nono's Songs : Scott McKenzie - San Francisco

lundi 19 mai 2014 à 08:00

Les Nono's Songs n'ont pas de but particulier si ce n'est de publier des musiques que j'apprécie.

Je ne donne aucune appréciation, je poste que des musiques, trouvées au détour du Net, ou d'un son/bruit que j'ai pu entendre quelques part ou avec quelqu'un. Ce n'est en aucun cas un signe de "nouveauté" ou un effet de mode quelconque.

Voici le clip de Scott McKenzie qui nous propose San Francisco


Error happened! 0 - Call to a member function query() on null In: /var/www/ecirtam.net/autoblogs/autoblogs/autoblog.php:200 http://www.ecirtam.net/autoblogs/autoblogs/blogm0lenet_bfc8f87e735c06165eb14a755febbc78e0faa7f6/?10 #0 /var/www/ecirtam.net/autoblogs/autoblogs/autoblog.php(414): VroumVroum_Config->setDisabled() #1 /var/www/ecirtam.net/autoblogs/autoblogs/autoblog.php(999): VroumVroum_Blog->update() #2 /var/www/ecirtam.net/autoblogs/autoblogs/blogm0lenet_bfc8f87e735c06165eb14a755febbc78e0faa7f6/index.php(1): require_once('...') #3 {main}