Analyse via Grafana du compte Twitter @CYBERNEURONES

90 x served & 11 x viewed

Voici donc les graphiques :


Le programme est en Python.

 

INSEE : Nombre de mort par tranche d’age

100 x served & 7 x viewed

J’ai donc fait un nouveau graphique, du nombre de mort par tranche d’age avec les données de l’INSEE. (Tranche de 10 ans)

Le graphique est faux sur la fin 2020, il ne sera juste que vers mi-fevrier 2021. Quand l’INSEE aura publié les données.

Voici donc mon process :

Etape 1 : Téléchargement des données de l’INSEE : https://www.insee.fr/fr/information/4190491

Etape 2 : je mets tout sur un même fichier:

# cat deces-* Deces_2020_M* | grep -v "nomprenom" > Full.csv
# wc -l Full.csv 
  25528867 Full.csv

Etape 3 : Je fais tourner un premier programme en Python :

# cat parse2.py 
import csv
import datetime
from dateutil.relativedelta import relativedelta

with open('Full.csv', 'rt') as f:
    csv_reader = csv.reader(f, quotechar='"', delimiter=';', quoting=csv.QUOTE_ALL, skipinitialspace=True)

    for line in csv_reader:
        #print(line[2])
        if (len(line[2]) == 8) and (not (str(line[2]).endswith("00"))):
            try:
               start_date = datetime.datetime.strptime(line[2],"%Y%m%d");
            except:
               print("error1",line[2])
        #print(line[6])
        if (len(line[6]) == 8) and (not (str(line[6]).endswith("00"))):
             try:
               end_date = datetime.datetime.strptime(line[6],"%Y%m%d");
               age = relativedelta(end_date, start_date).years
               #print(line[6])
               year = end_date.year
               month = end_date.month
               if  age <= 10:
                   print year,",",month,", 0to10"
               if 10 < age <= 20:
                   print year,",",month,", 10to20"
               if 20 < age <= 30:
                   print year,",",month,", 20to30"
               if 30 < age <= 40:
                   print year,",",month,", 30to40"
               if 40 < age <= 50:
                   print year,",",month,", 40to50"
               if 50 < age <= 60:
                   print year,",",month,", 50to60"
               if 60 < age <= 70:
                   print year,",",month,", 60to70"
               if 70 < age <= 80:
                   print year,",",month,", 70to80"
               if 80 < age <= 90:
                   print year,",",month,", 80to90"
               if 90 < age : print year,",",month,", more90" except: print("error2",line[6]) # python parse2.py > age2.csv

Etape 4 : J’ordonne et je fais le ménage (je garde que les année 20xx):

# cat clear.bash 

cat age2.csv | grep -v "error" | sort -n | uniq -c > sort-age2.csv
echo "Date,Number" > 0to10.csv
grep "0to10" sort-age2.csv | awk '{if ($4 > 9) {print  $2 "-" $4 "," $1 ;} else if ($4 < 10) {print $2 "-0" $4 "," $1 ;} }' | grep "^20" | sort -n >> 0to10.csv
echo "Date,Number" > 10to20.csv
grep "10to20" sort-age2.csv  | awk '{if ($4 > 9) {print  $2 "-" $4 "," $1 ;} else if ($4 < 10) {print $2 "-0" $4 "," $1 ;} }' | grep "^20" | sort -n >> 10to20.csv
echo "Date,Number" > 20to30.csv
grep "20to30" sort-age2.csv | awk '{if ($4 > 9) {print  $2 "-" $4 "," $1 ;} else if ($4 < 10) {print $2 "-0" $4 "," $1 ;} }' | grep "^20" | sort -n >> 20to30.csv
echo "Date,Number" > 30to40.csv
grep "30to40" sort-age2.csv | awk '{if ($4 > 9) {print  $2 "-" $4 "," $1 ;} else if ($4 < 10) {print $2 "-0" $4 "," $1 ;} }' | grep "^20" | sort -n >> 30to40.csv
echo "Date,Number" > 40to50.csv
grep "40to50" sort-age2.csv | awk '{if ($4 > 9) {print  $2 "-" $4 "," $1 ;} else if ($4 < 10) {print $2 "-0" $4 "," $1 ;} }' | grep "^20" | sort -n >> 40to50.csv
echo "Date,Number" > 50to60.csv
grep "50to60" sort-age2.csv | awk '{if ($4 > 9) {print  $2 "-" $4 "," $1 ;} else if ($4 < 10) {print $2 "-0" $4 "," $1 ;} }' | grep "^20" | sort -n >> 50to60.csv
echo "Date,Number" > 60to70.csv
grep "60to70" sort-age2.csv | awk '{if ($4 > 9) {print  $2 "-" $4 "," $1 ;} else if ($4 < 10) {print $2 "-0" $4 "," $1 ;} }' | grep "^20" | sort -n >> 60to70.csv
echo "Date,Number" > 70to80.csv
grep "70to80" sort-age2.csv | awk '{if ($4 > 9) {print  $2 "-" $4 "," $1 ;} else if ($4 < 10) {print $2 "-0" $4 "," $1 ;} }' | grep "^20" | sort -n >> 70to80.csv
echo "Date,Number" > 80to90.csv
grep "80to90" sort-age2.csv | awk '{if ($4 > 9) {print  $2 "-" $4 "," $1 ;} else if ($4 < 10) {print $2 "-0" $4 "," $1 ;} }' | grep "^20" | sort -n >> 80to90.csv
echo "Date,Number" > more90.csv
grep "more90" sort-age2.csv | awk '{if ($4 > 9) {print  $2 "-" $4 "," $1 ;} else if ($4 < 10) {print $2 "-0" $4 "," $1 ;} }' | grep "^20" | sort -n >> more90.csv

# ./clear.bash

Ou bien je garde uniquement > 1975 avec clear2.bash

 

cat clear2.bash 

cat age2.csv | grep -v "error" | sort -n | uniq -c > sort-age2.csv
echo "Date,Number" > 0to10.csv
grep "0to10" sort-age2.csv | awk '{if ($2 > 1975) {if ($4 > 9) {print  $2 "-" $4 "," $1 ;} else if ($4 < 10) {print  $2 "-0" $4 "," $1 ;}} }'  | sort -n >> 0to10.csv
echo "Date,Number" > 10to20.csv
grep "10to20" sort-age2.csv  | awk '{if ($2 > 1975) {if ($4 > 9) {print  $2 "-" $4 "," $1 ;} else if ($4 < 10) {print  $2 "-0" $4 "," $1 ;}} }' | sort -n >> 10to20.csv
echo "Date,Number" > 20to30.csv
grep "20to30" sort-age2.csv | awk '{if ($2 > 1975) {if ($4 > 9) {print  $2 "-" $4 "," $1 ;} else if ($4 < 10) {print  $2 "-0" $4 "," $1 ;}} }' | sort -n >> 20to30.csv
echo "Date,Number" > 30to40.csv
grep "30to40" sort-age2.csv | awk '{if ($2 > 1975) {if ($4 > 9) {print  $2 "-" $4 "," $1 ;} else if ($4 < 10) {print  $2 "-0" $4 "," $1 ;}} }' | sort -n >> 30to40.csv
echo "Date,Number" > 40to50.csv
grep "40to50" sort-age2.csv | awk '{if ($2 > 1975) {if ($4 > 9) {print  $2 "-" $4 "," $1 ;} else if ($4 < 10) {print  $2 "-0" $4 "," $1 ;}} }'  | sort -n >> 40to50.csv
echo "Date,Number" > 50to60.csv
grep "50to60" sort-age2.csv | awk '{if ($2 > 1975) {if ($4 > 9) {print  $2 "-" $4 "," $1 ;} else if ($4 < 10) {print  $2 "-0" $4 "," $1 ;}} }'  | sort -n >> 50to60.csv
echo "Date,Number" > 60to70.csv
grep "60to70" sort-age2.csv | awk '{if ($2 > 1975) {if ($4 > 9) {print  $2 "-" $4 "," $1 ;} else if ($4 < 10) {print  $2 "-0" $4 "," $1 ;}} }' | sort -n >> 60to70.csv
echo "Date,Number" > 70to80.csv
grep "70to80" sort-age2.csv | awk '{if ($2 > 1975) {if ($4 > 9) {print  $2 "-" $4 "," $1 ;} else if ($4 < 10) {print  $2 "-0" $4 "," $1 ;}} }' | sort -n >> 70to80.csv
echo "Date,Number" > 80to90.csv
grep "80to90" sort-age2.csv | awk '{if ($2 > 1975) {if ($4 > 9) {print  $2 "-" $4 "," $1 ;} else if ($4 < 10) {print  $2 "-0" $4 "," $1 ;}} }'  | sort -n >> 80to90.csv
echo "Date,Number" > more90.csv
grep "more90" sort-age2.csv | awk '{if ($2 > 1975) {if ($4 > 9) {print  $2 "-" $4 "," $1 ;} else if ($4 < 10) {print  $2 "-0" $4 "," $1 ;}} }'  | sort -n >> more90.csv

Etape 5 : Je dessine :

# cat draw2.py 
import plotly.graph_objects as go

import pandas as pd

fig = go.Figure()

df = pd.read_csv('./0to10.csv')
fig.add_trace(go.Scatter(x=df['Date'], y=df['Number'],name='10 to 20'))

df2 = pd.read_csv('./10to20.csv')
fig.add_trace(go.Scatter(x=df2['Date'], y=df2['Number'],name='10 to 20'))

df3 = pd.read_csv('./20to30.csv')
fig.add_trace(go.Scatter(x=df3['Date'], y=df3['Number'],name='20 to 30'))

df4 = pd.read_csv('./30to40.csv')
fig.add_trace(go.Scatter(x=df4['Date'], y=df4['Number'],name='30 to 40'))

df5 = pd.read_csv('./40to50.csv')
fig.add_trace(go.Scatter(x=df5['Date'], y=df5['Number'],name='40 to 50'))

df6 = pd.read_csv('./50to60.csv')
fig.add_trace(go.Scatter(x=df6['Date'], y=df6['Number'],name='50 to 60'))

df7 = pd.read_csv('./60to70.csv')
fig.add_trace(go.Scatter(x=df7['Date'], y=df7['Number'],name='60 to 70'))

df8 = pd.read_csv('./70to80.csv')
fig.add_trace(go.Scatter(x=df8['Date'], y=df8['Number'],name='70 to 80'))

df9 = pd.read_csv('./80to90.csv')
fig.add_trace(go.Scatter(x=df9['Date'], y=df9['Number'],name='80 to 90'))

df10 = pd.read_csv('./more90.csv')
fig.add_trace(go.Scatter(x=df10['Date'], y=df10['Number'],name='more 90'))


fig.show()

#  python3 draw2.py

Le résultat, j’ai un problème sur décembre 1989 :

Hold Up Le Documentaire : Tour d’horizon de la presse (suite)

113 x served & 20 x viewed

La suite car il y a vraiment des bons posts sur Twitter :

 

 

Compte à suivre sur Twitter

88 x served & 15 x viewed

Je fais donc la liste des comptes à suivre et à bloquer pour un ami … ensuite il faut ajouter à cette liste quelques médias tels que franceinfo , Le Monde, Libération, France Inter, Agence France Presse, France Culture. Liste des comptes à suivre :

  1. https://twitter.com/Projet_Arcadie
  2. https://twitter.com/samuellaurent
  3. https://twitter.com/bismatoj :
  4. https://twitter.com/GeWoessner :
  5. https://twitter.com/gblardone : I learned a long time ago that reality was much weirder than anyone’s imagination-It never got weird enough for me-Buy the ticket, take the ride. H.S Thompson
  6. https://twitter.com/conspiration : Conspiracy Watch. Observatoire du conspirationnisme et des théories du complot.
  7. https://twitter.com/SylvainTronchet : journaliste – cellule investigation @radiofrance @franceinter @franceinfo Contact et envoi de documents : sylvain.tronchet@protonmail.com PGP : http://bit.ly/2w4gzS3
  8. https://twitter.com/Maitre_Eolas : Avocat, praticien de la justice, débatteur public, potache. (Source : Cour de cassation)
  9. https://twitter.com/science__4__all : Ancien compte de Lê Nguyên Hoang (Science4All).Nouveau : le_science4all
  10. https://twitter.com/thomassnegaroff : Parle à des étudiants (sciences po), des spectateurs (théâtre), des auditeurs (franceinfo), des telespectateurs (Cpolitique) et des lecteurs (roman le 1er oct)
  11. https://twitter.com/d_schneidermann : Sphinx perplexe d’ @arretsurimages. Guette les signaux faibles du monde d’après pandémie et confinement. Chaque lundi dans @libe.
  12. https://twitter.com/mompontet : Citoyen, Journaliste , musicien, écrivain, hypnotiseur de dromadaires…la vie est supportable à condition d’en avoir plusieurs.
  13. https://twitter.com/In_Feuerstein : Journaliste Finances publiques @lesechos Paradis et enfers fiscaux
  14. https://twitter.com/laquadrature : Citizen advocacy group defending civil liberties in a digital age. Community owned account: @UnGarage
  15. https://twitter.com/LibeDesintox : Fantôme du service désintox. Encore un peu de vérification et pas mal de trolling soft. Canal de diffusion de @CheckNewsfr. By Cédric Mathiot
  16. https://twitter.com/LUppsala : Journaliste indépendante @Le_Figaro @heidi_news @Slatefr @koriifr . Santé, EBM, psycho, genres et sexualités. Rising an army of cats
  17. https://twitter.com/Damkyan_Omega : MScEng in Biosciences. PhD Candidate in Biochemistry @goloubinofflab @UNIL. GrumpyVegan. Metalhead. Vulgairisateur. Potichats. W.Oodendijk. Philosophe jardinier
  18. https://twitter.com/tristanmf : Oldschool digital dad. Observateur des extrêmes. Maître de conf. ass. cultures numériques @Univ_Paris – Pilote @stophatemoney
  19. https://twitter.com/TroncheBiais : La chaîne de l’Esprit Critique — Zététique & démarche scientifique. Tous les tweets sont rédigés par Acermendax
  20. https://twitter.com/HygieneMentale : Vidéos sur la Pensée Critique, la méthodologie, l’étude rationnelle du paranormal et des pseudo-sciences.
  21. https://twitter.com/vlanx0 : (anciennement « Alexandre Technoprog ») Chaîne YouTube : http://youtube.com/c/Vlanx
  22. https://twitter.com/Acermendax : Le scepticisme n’est pas le cynisme. Omnis homo mendax.
  23. https://twitter.com/nathanpsmad : ID Resident @hopitalbichat @APHP. PhD student Public Health @HPRUamr @IAME_Center. Coordinator French Network of Young ID doctors @ReJIF_ @SPILF_  
  24. https://twitter.com/rachidowsky13 : Professeur des écoles en SEGPA et chroniqueur chez @libe , @Slatefr , @RevueBallast et d’autres.
  25. https://twitter.com/CovaFlorian : Professeur en philosophie à l’Université de Genève. Spécialisé en philosophie morale et sciences cognitives. Philosophe expérimental à ses heures. Academicard.
  26. https://twitter.com/astropierre : Ici, on parle de Science, mais pas que… Posez-moi vos questions, ça ne coûte rien
  27. https://twitter.com/InseeFr : Compte officiel de l’Insee. #Statistiques et études sur l’#économie et la #société françaises. http://j.mp/ContactInsee
  28. https://twitter.com/Le___Doc : Lecteur des entrailles humaines. Rarement blanc ou noir. Souvent en nuances de gris. Je porte un masque.
  29. https://twitter.com/DeBunKerEtoiles : Détricoteur de théories du complot
  30. https://twitter.com/clemovitch : Docteur en science politique • Enseigne la rhétorique à @sciencespo • Tous les soirs dans @cliquetv, en clair sur @canalplus !
  31. https://twitter.com/NicoMartinFC : Producteur de @lamethodeFC sur @FranceCulture, chroniqueur @LeCercleCinema. Scénariste & réalisateur à ses heures perdues, sans oublier la GRS et l’apéritif.

C’est une liste de 30 sur mes 410 abonnements … l’ideal est de suivre moins de 500 comptes sinon ce n’est pas vraiment possible.

Liste des comptes à bloquer :

  1. https://twitter.com/SputnikInt : Media de propagande.
  2. https://twitter.com/RTenfrancais : Media de propagande.
  3. https://twitter.com/Valeurs : Media de propagande.
  4. https://twitter.com/france_soir : Fake news. Media de propagande.
  5. https://twitter.com/Conflits_FR : Media de propagande.
  6. https://twitter.com/kevinbossuet : Sud Radio …
  7. https://twitter.com/SudRadio : Radio Complot.
  8. https://twitter.com/JeanMessiha : Misère.
  9. https://twitter.com/andrebercoff : Expert en complot à 1 Euro.
  10. https://twitter.com/biobiobiobior : Fake science .
  11. https://twitter.com/CorinneReverbel : Fake science .
  12. https://twitter.com/medicalfollower : Fake science.
  13. https://twitter.com/aragon_jb : Fake science.
  14. https://twitter.com/sonjoachim : Misère.
  15. https://twitter.com/valerieboyer13 : Misère.
  16. https://twitter.com/AlertesInfosUSA : Fake science.
  17. https://twitter.com/ACChaudre : Fake science.
  18. https://twitter.com/silvano_trotta : Fake science.
  19. https://twitter.com/idrissaberkane : Fake science.
  20. https://twitter.com/ArianeWalter : Fake science.
  21. https://twitter.com/ArtLeroux : Fake science.
  22. https://twitter.com/ivanrioufol : Fake science.
  23. https://twitter.com/Cyrilhanouna : Misère.
  24. https://twitter.com/JeanYvesCAPO ; Fake science.
  25. https://twitter.com/Stalec_ : Fake science.
  26. https://twitter.com/JeanYvesTarrade : Fake science.
  27. https://twitter.com/PascalPraud : Misère.
  28. https://twitter.com/LMucchielli : Fake science.
  29. https://twitter.com/f_philippot : Misère.
  30. https://twitter.com/silvano_trotta : Fake science.
  31. https://twitter.com/JM_Bigard : Misère.

Statistique de @CYBERNEURONES :

  Tweets Impressions du Tweet Visites du profil Mentions Nouveaux abonnés
aout 20 76 36000 236 74 9
juillet 20 41 18000 98 47 -1
juin 20 109 35200 217 78 2
mai 20 256 100000 655 127 10
avril 20 234 74700 438 107 3
mars 20 85 42500 317 21 4
février 20 144 19900 349 25 8
janvier 20 140 44300 378 74 10
décembre 19 82 41900 213 18 2
novembre 19 89 24600 152 86 6
octobre 19 25 8256 50 10 8
aout 19 49 15200 168 11 -3
juillet 19 40 9292 111 4 4
juin 19 53 11700 191 37 -1
mai 19 96 24600 313 9 12
avril 19 38 11300 154 10 3
mars 19 79 30000 262 16 3
février 19 2 32900 10 1 1
janv 19 84800 5
déc. 18 161 111000 521 65 11
nov. 18 54 20300 253 23 5
oct. 18 52 33000 184 16 2
sept. 18 58 19800 173 8 2
août 18 22 12000 55 6 2
juil. 18 30 19800 87 5 -12
juin 18 74 25100 166 37 14
mai 18 59 14800 121 15 2
avr. 18 63 34900 148 7 1
mars 18 133 55500 220 31 15
févr. 18 68 24500 163 12 5
janv. 18 91 27700 212 18 3
déc. 17 63 16100 292 15 -1
nov. 17 77 22900 152 30 0
oct. 17 90 30400 200 55 6
sept. 17 96 32400 262 20 -2
août 17 106 23700 260 41 7
juil. 17 89 28600 135 16 1