Transformarea datelor JSON
Atunci când citești date din format JSON într-un dicționar, cel mai probabil va trebui să aplici manual anumite transformări înainte ca datele să poată fi stocate într-un DataFrame. Acest lucru este obișnuit atunci când lucrezi cu dicționare imbricate, pe care vei avea ocazia să le explorezi în acest exercițiu.
Fișierul "nested_school_scores.json" a fost citit într-un dicționar disponibil în variabila raw_testing_scores, care are următoarea structură:
{
"01M539": {
"street_address": "111 Columbia Street",
"city": "Manhattan",
"scores": {
"math": 657,
"reading": 601,
"writing": 601
}
}, ...
}
Acest exercițiu face parte din cursul
ETL și ELT în Python
Instrucțiuni pentru exercițiu
- Parcurge atât cheile, cât și valorile dicționarului
raw_testing_scoresfolosind o buclă. - Extrage câmpul
"street_address"din fiecare dicționar imbricat în obiectulraw_testing_scores.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
normalized_testing_scores = []
# Loop through each of the dictionary key-value pairs
for school_id, school_info in raw_testing_scores.____():
normalized_testing_scores.append([
school_id,
school_info.____("____"), # Pull the "street_address"
school_info.get("city"),
school_info.get("scores").get("math", 0),
school_info.get("scores").get("reading", 0),
school_info.get("scores").get("writing", 0),
])
print(normalized_testing_scores)