N.S.I. WorkSpace Compétence,P-Th-C,Première C2 – Compétences | Exploiter les données d’une table

C2 – Compétences | Exploiter les données d’une table

Ce qui suit s’appuie sur une table construite au cours de cette séquence : Import et traitement d’un dataset

Recherche de données dans une table

On peut rechercher :

>>> le nombre d’occurrences (de lignes) pour lesquels les attributs possèdent des valeurs particulières.
Il s’agira donc de COMPTER ou encore DENOMBRER des enregistrements.

>>> une ou plusieurs occurrences pour lesquels les attributs possèdent des valeurs particulières.
Il s’agira donc de SELECTIONNER, ou encore d’EXTRAIRE ou de TRIER des enregistrements.

Algorithme général d’une recherche

>>> 1 – Parcourir tous les enregistrements de la table
=> boucle bornée

>>> 2 – Définir les critères de recherche requis
=> test(s)

>>> 3 – Sauvegarder le(s) résultat(s) dans une structure de donnée adaptée
=> variable(s) simples
=> tuple(s)
=> liste(s)
=> dictionnaire(s)

Exercice 1 – Compter le nombre d’enregistrements par sexe

Solution possible
F, M = 0, 0  # Initialisation des structures de sauvegarde (variables simples)
for E in T:  # Parcours des enregistrements de la table
    if E[2] == "F":  # Critère de recherche : test
        F += 1
    else:
        M += 1
assert F + M == len(T)  # Contrôle de la validité du programme (facultatif)

Exercice 2 – Compter le nombre d’enregistrements par année de naissance


Exercice 3 – Compter le nombre d’enregistrements par sexe et par année


Exercice 4 – Rechercher le(s) prénom(s) F ou M qui ont été donnés le plus grand nombre de fois


Exercice 5 – Rechercher tous les prénoms commençant par une lettre donnée, mais ne les sauvegarder qu’une seule fois (pas deux fois le même prénom)


Exercice 6 – Rechercher tous les prénoms commençant par une lettre donnée, mais ne les sauvegarder qu’une seule fois (pas deux fois le même prénom) et en les séparant par sexe


Exercice 7 – Rechercher tous les prénoms commençant par une lettre donnée, mais ne les sauvegarder qu’une seule fois (pas deux fois le même prénom) et pour une année donnée.


Exercice 8 – Rechercher tous les prénoms (en ne les sauvegardant qu’une seule fois) qui ont été donnés à des enfants N(nbOccurrence) fois ou plus.


Exercice 9 – Rechercher toutes les années où un prénom donné apparaît.


Exercice 10 – Pour une année donnée, établir le top 5 des prénoms (avec le nombre d’occurrence) par sexe.
Coup de pouce : pour trier par ordre décroissant une liste, il faut procéder de la façon suivante : nomDeLaListe.sort(reverse=True)


Les données disponibles variant d’une année à l’autre, la proposition qui suit rédigée en 2021 est en partie obsolète.

Télécharger une archive contenant le programme écrit en langage Python qui permet de construire la table des prénoms à partir d’un fichier ‘csv’

Recherche d’un prénom dans la table

Soit la fonction suivante :

def cherche_prenom1(table) :
    """ Cherche un prénom saisi par l'utilisateur et 
    affiche les années et le nombre d'occurrences de
    ce prénom s'il existe dans la table.
    Affiche "Prénom inexistant' s'il n'est pas trouvé
    
    Par exemple :
    
    In [1]: cherche_prenom(table)

    Choisissez un prénom : gabin
    En 2013  >>> donné  23 fois
    En 2014  >>> donné  36 fois
    En 2021  >>> donné  31 fois
    En 2020  >>> donné  24 fois
    En 2016  >>> donné  35 fois
    En 2015  >>> donné  36 fois
    En 2017  >>> donné  33 fois
    En 2018  >>> donné  25 fois
    En 2019  >>> donné  24 fois
    
    In [2]: cherche_prenom(table)

    Choisissez un prénom : Robert
    Prénom inexistant
    """

A partir de la spécification de cette fonction, écrire les instructions en langage Python qui permettent d’obtenir le résultat attendu.

Des difficultés ? Coup de pouce !


Article sous licence << Cliquez pour plus d’informations <<