Trasformare dati JSON
Quando leggi dati in formato JSON in un dizionario, è molto probabile che tu debba applicare qualche trasformazione manuale prima di poterli salvare in un DataFrame. Questo è comune quando lavori con dizionari annidati, che avrai modo di esplorare in questo esercizio.
Il file "nested_school_scores.json" è stato letto in un dizionario disponibile nella variabile raw_testing_scores, che ha la seguente forma:
{
"01M539": {
"street_address": "111 Columbia Street",
"city": "Manhattan",
"scores": {
"math": 657,
"reading": 601,
"writing": 601
}
}, ...
}
Questo esercizio fa parte del corso
ETL and ELT in Python
Istruzioni dell'esercizio
- Itera sia sulle chiavi sia sui valori del dizionario
raw_testing_scores. - Estrai la
"street_address"da ciascun dizionario annidato nell'oggettoraw_testing_scores.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
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)