Exemples de comment découper un dictionnaire (par exemple créer un sous-dictionnaire ou un échantillon) en python
Table des matières
Créer un dictionnaire
Créons d'abord un dictionnaire en python :
d = {'a':1,'b':2,'c':3,'d':4,'e':5,'f':6}
Trancher ("slice") un dictionnaire
Remarque : par défaut un dictionnaire n'est pas un objet ordonné.
Pour sélectionner n éléments d'un dictionnaire, une solution est de faire :
import itertools
dict(itertools.islice(d.items(), n))
ou n <= len(d).
Exemple avec n=2
import itertools
dict(itertools.islice(d.items(), 2))
donne ici
{'a': 1, 'b': 2}
Créer un échantillon
Pour créer un échantillon d'un dictionnaire, une solution consiste à sélectionner aléatoirement des clés de dictionnaire :
import random
d_keys = list(d.keys())
random.shuffle(d_keys)
d2 = {}
for key in d_keys:
d2[key] = d[key]
dict(itertools.islice(d2.items(), 2))
donne par exemple
{'c': 3, 'a': 1}