Werken met meerdere spreadsheets
Werkmappen die vooral voor mensen, niet voor machines, bedoeld zijn, kunnen gegevens over één onderwerp over meerdere tabs opslaan. Zo kan een bestand bijvoorbeeld voor elke regio of elk jaar waarin een bedrijf actief was een ander tabblad met transacties hebben.
Het FreeCodeCamp New Developer Survey-bestand is vergelijkbaar opgezet, met steekproeven van antwoorden uit verschillende jaren op verschillende tabs. Je taak is om ze te bundelen in één dataframe voor analyse.
pandas is geïmporteerd als pd. Alle tabs zijn ingelezen in de geordende dictionary responses, waarbij de tabnamen de keys zijn en de dataframes de values. Je kunt de dataframes dus opvragen met de methode values().
Deze oefening maakt deel uit van de cursus
Gestroomlijnde data-inname met pandas
Oefeninstructies
- Maak een leeg dataframe,
all_responses. - Zet een
for-lus op om te itereren over de values in de dictionaryresponses. - Concateneer elk dataframe met
all_responsesen wijs het resultaat opnieuw toe aan dezelfde variabelenaam.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Create an empty dataframe
all_responses = ____
# Set up for loop to iterate through values in responses
for df in ____:
# Print the number of rows being added
print("Adding {} rows".format(df.shape[0]))
# Concatenate all_responses and df, assign result
all_responses = pd.concat(____)
# Graph employment statuses in sample
counts = all_responses.groupby("EmploymentStatus").EmploymentStatus.count()
counts.plot.barh()
plt.show()