programmeren
in python
Aardrijkskunde Les 2: Data inlezen in Python
vandaag gaan we leren
-
Tekst uitlezen uit een bestand
-
Tekst netjes laten ophakken in stukjes
Aardbevingen plotten
Vorige les zijn we begonnen met leren over het plotten van aardbevingen op een wereldkaart.
Als het goed is, heb jij aan het einde van deze lessenserie héél veel aardbevingen geplot op een wereldkaart met behulp van Python
Plotten betekent dat je een verzameling gegevens visueel laat zien op een scherm of op papier.
Weet jij het nog?
Plotten betekent dat je een verzameling gegevens visueel laat zien op een scherm of op papier.
Weet jij het nog?
Bij plotten maak je gebruik
van (coördinaat-)assen.
Plotten betekent dat je een verzameling gegevens visueel laat zien op een scherm of op papier.
Weet jij het nog?
Bij plotten maak je gebruik
van (coördinaat-)assen.
Met coördinaten kun je locaties op aarde aangeven!
Weet jij het nog?
Latitude gaat van -90° tot 90°
Longtitude gaat van -180° tot 180°
Weet jij het nog?
Latitude ( breedtegraad )
Latitude gaat van -90° tot 90°, dus de hele hoogte van de kaart heeft 180 eenheden. Op 0°, in het midden, ligt de evenaar.
Longtitude ( lengtegraad )
Longtitude gaat van -180° tot 180°, dus de hele breedte van de kaart heeft 360 eenheden.
Met de magnitude wordt aangegeven hoe sterk de aardbeving is.
Weet jij het nog?
Weet jij het nog?
Depth staat voor hoe diep in de aarde de aardbeving plaats heeft gevonden.
werkblad "even opfrissen"
Aan de slag
Ons Geheugen is weer opgefrist, nu verder!
Data inlezen
Hoe zorgen we nu dat we het proces van plotten kunnen versnellen?
Python kan data inlezen en het werk voor je doen
demo
DATA INLEZEN
Wow! Dat is SUPER veel data die Python heeft ingelezen.
Hoe halen we hier nu de informatie uit die we nodig hebben?
Alle data staat een hele lange 'lijst'. Weet je nog hoe lijsten werken?
dieren = ['schildpad', 'kikker']
print('De', dieren[0], 'loopt door het bos.')
Data inlezen
In de variabele data staat nu dus een hele lange lijst met alle informatie over heel veel aardbevingen.
data = ['1/2/65,13:44:18,19.246,145.616,Earthquake,131.6,6',
'1/4/65,11:29:49,1.863,127.352,Earthquake,80,5.8']
Per regel in je lijst vind je alle informatie over één aardbeving.
Data inlezen
Hoe denk jij dat je nu de eerste regel uit data kan 'inlezen'?
data = ['1/2/65,13:44:18,19.246,145.616,Earthquake,131.6,6',
'1/4/65,11:29:49,1.863,127.352,Earthquake,80,5.8']
Tip: Denk terug aan hoe jij een dier uit je lijst kon aanwijzen om te gebruiken in je verhaal.
Schrijf het antwoord op je wisbordje!
demo
Data inlezen
Met data[0] lezen we de eerste regel uit. Nu willen we die regel gaan opslaan zodat we er straks wat mee kunnen doen.
Definieer een variabele data en geef deze als waarde de ingelezen data uit je bestand
Definieer daarna een variabele regel_1 en geef deze de eerste regel van data als waarde
target_url = 'https://gist.githubusercontent.com/Felienne/00d73c032f4ad14d701aecac4c0245fa/raw/0de7cff62e96a0ead4b586274479f7713be76833/earthquakes.csv'
#Stap 1
data = readlines(target_url)
#Stap 2
regel_1 = data[0]
demo
werkblad "Data inlezen"
Aan de slag
DATA IN STUKJES HAKKEN
Zo, we hebben de eerste regel opgeslagen:
regel_1 is nu netjes: '1/2/65,13:44:18,19.246,145.616,Earthquake,131.6,6'
Nouja, netjes? Het is nog niet echt handig om er iets uit te halen, want het is één lange letter- en cijferbrei...
Data in stukjes hakken
regel_1 is: '1/2/65,13:44:18,19.246,145.616,Earthquake,131.6,6'
De magnitude is het laatste cijfertje! Waar in excel een streepje staat, staat in python een komma.
Hoe gaan we nu
alleen dit cijfertje
opslaan in een variabele?
Data in stukjes hakken
regel_1 is: '1/2/65,13:44:18,19.246,145.616,Earthquake,131.6,6'
Split! We gaan de regel ophakken in stukjes. Zie je dat alle data is gescheiden door een komma in Python? Op dat teken gaan we splitsen.
regel_1 = data[0]
opgehakte_regel_1 = regel_1.split(',')
demo
Data in stukjes hakken
Gaaf!! We hebben nu alle data uit de eerste regel in de vorm van een lijst.
regel_1 = data[0]
opgehakte_regel_1 = regel_1.split(',')
De waarde van opgehakte_regel_1 is:
['1/2/65', '13:44:18', '19.246', '145.616', 'Earthquake', '131.6', '6']
Data in stukjes hakken
Hoe krijgen we nu de magnitude (de laatste waarde van de lijst) van deze aardbeving?
['1/2/65', '13:44:18', '19.246', '145.616', 'Earthquake', '131.6', '6']
demo
Data in stukjes hakken
Juist! Net zoals we onze olifanten en schildpadden uit onze lijst haalden, kunnen we nu ook de magnitude uit een lijst halen.
Uiteraard werkt dit ook voor alle andere waardes van de aardbeving! Zo kun je ook iets printen over de datum van de aardbeving, of over de coördinaten.
lijst_van_regel_1 = regel_1.split(',')
magnitude = lijst_van_regel_1[6]
demo
werkblad "Data in stukjes hakken"
Aan de slag
zodadelijk op de computer...
Repl Forken
We hebben wat bijzondere code nodig om onze opdrachten mee te maken. Deze staat voor je klaar op:
https://repl.it/@LisaVanDerPlas/CSC-M3-L2B
Klik op fork om deze code te kopieren naar je eigen project.
Repl Forken
https://repl.it/@LisaVanDerPlas/CSC-M3-L2B
Pas daarna de naam aan naar de naam van je opdracht.
opdrachten deel b
Basis:
- Data inlezen
- Alleen 1 regel data inlezen
- Data ophakken in stukjes
Extra:
- Nieuwsbericht maken met je data
vandaag hebben we geleerd
afsluiting
-
Tekst uitlezen uit een bestand
-
Tekst netjes laten ophakken in stukjes
CSC-Mod-3-Les-2a
By Lisa van der Plas
CSC-Mod-3-Les-2a
Computer Science Certificate Module Aardrijkskunde, les 2a
- 357