Je suis pas sûr de tout comprendre. Tu possèdes des statistiques sur le temps pour taper chaque digramme sur chaque disposition de clavier ? Donc, autant de tableaux "temps" qu'il y a de dispositions de clavier ?
D'après ce que je comprends de tes données, tu peux calculer le temps total pour taper le long texte comme ceci:
1 2 3 4 5 6 7
|
# convertir le tableau de fréquences en un dictionnaire
frequences = {e[:2]:int(e[2:]) for e in frequences}
# idem pour le temps
temps = {e[:2]:float(e[2:]) for e in temps}
# calculer la somme des produits
temps_total = sum(frequences[digram]*temps.get(digram, 0) for digram in frequences) |
J'ai utilisé
temps.get(digram,0) au lieu de
temps[digram] au cas où il manquerait des statistiques sur certains digrammes. Si les statistiques sont fort incomplètes il faudrait utiliser une estimation plus réaliste que 0.
On pourrait normaliser les fréquences mais si le texte est toujours le même, le tableau de fréquences ne change pas et il n'est pas nécessaire de normaliser.
Pour aller plus loin, il faudrait que tu donnes plus de détails...
Partager