Een Series maken
Maak een Pandas Series vanuit een Python-lijst, een dict en een NumPy-array en bekijk de attributen index en values.
Een Series maken is een gratis Pandas & NumPy Academy-les op CoddyKit. Dit is les 1 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Pandas & NumPy Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Pandas & NumPy Academy bevat in totaal 4 lessen.
Wat is een Pandas Series?
Een Pandas Series is een eendimensionale array met labels die elk gegevenstype kan bevatten — gehele getallen, kommagetallen, tekenreeksen, Python-objecten of zelfs andere Series. Zie het als een NumPy-array met een aangepaste index (labels voor elk element). Die index maakt Series veel krachtiger dan gewone arrays voor analysetaken waarbij waarden beschrijvende namen nodig hebben.
import pandas as pd
import numpy as np
s = pd.Series([10, 20, 30, 40])
print(s)
# 0 10
# 1 20
# 2 30
# 3 40
# dtype: int64Een Series maken vanuit een Python-lijst
Als je een Python-lijst doorgeeft aan pd.Series(), wordt een Series gemaakt met een standaard integer RangeIndex (0, 1, 2, ...). Je kunt aangepaste indexlabels opgeven via de parameter index=. De lengte van de indexlijst moet overeenkomen met de lengte van de gegevens. Labels kunnen tekenreeksen, gehele getallen, datums of andere hashbare Python-objecten zijn.
import pandas as pd
temps = pd.Series([22.5, 19.0, 25.3, 17.8],
index=['Mon', 'Tue', 'Wed', 'Thu'])
print(temps)
# Mon 22.5
# Tue 19.0
# Wed 25.3
# Thu 17.8
# dtype: float64Een Series maken vanuit een woordenboek
Je kunt een Python-dict rechtstreeks doorgeven aan pd.Series(). De sleutels van het dict worden de indexlabels en de waarden worden de gegevens. Dit is een van de natuurlijkste manieren om een Series te maken wanneer je gegevens al betekenisvolle labels hebben. De resulterende Series wordt geordend volgens de invoegvolgorde van het dict (Python 3.7+).
import pandas as pd
stock = {'AAPL': 182.5, 'GOOG': 141.3, 'MSFT': 378.9}
s = pd.Series(stock)
print(s)
# AAPL 182.5
# GOOG 141.3
# MSFT 378.9
# dtype: float64Een Series maken vanuit een NumPy-array
Een NumPy ndarray kan als gegevensargument worden doorgegeven. Het dtype van de Series komt overeen met het dtype van de ndarray. De onderliggende gegevens worden opgeslagen als een NumPy-array, dus alle NumPy-ufuncs werken rechtstreeks op Series. Daardoor kun je bestaande NumPy-code eenvoudig naar Pandas overzetten zonder de logica voor gegevensvoorbereiding te herschrijven.
import pandas as pd
import numpy as np
arr = np.linspace(0, 1, 5)
s = pd.Series(arr, index=['a', 'b', 'c', 'd', 'e'])
print(s)
# a 0.00
# b 0.25
# c 0.50
# d 0.75
# e 1.00De kenmerken .index en .values
s.index geeft het Index-object terug dat de labels bevat. s.values geeft de onderliggende NumPy-array met gegevenswaarden terug. Beide zijn essentieel voor interoperabiliteit: je kunt s.values aan elke NumPy-functie doorgeven en het resultaat terug omzetten naar een Series met de oorspronkelijke index. s.dtype geeft het gegevenstype van de waarden.
import pandas as pd
s = pd.Series([3, 1, 4], index=['x', 'y', 'z'])
print(s.index) # Index(['x', 'y', 'z'], dtype='object')
print(s.values) # [3 1 4]
print(s.dtype) # int64Naam van de Series en naam van de index
Een Series kan een kenmerk .name hebben dat beschrijft wat de waarden voorstellen, en de index kan een kenmerk .name hebben dat beschrijft wat de labels voorstellen. Deze namen verschijnen in DataFrames wanneer een Series aan een kolom wordt toegewezen en in labels van grafieken. Stel ze in met s.name = 'price' of bij het maken met name=.
import pandas as pd
s = pd.Series([1.2, 3.4, 5.6],
index=['a', 'b', 'c'],
name='measurement')
s.index.name = 'label'
print(s)
# label
# a 1.2
# b 3.4
# c 5.6
# Name: measurement, dtype: float64Een Series met een scalaire waarde maken
Als je één scalaire waarde met een expliciete index doorgeeft aan pd.Series(), wordt een Series gemaakt waarvan elk element gelijk is aan die scalaire waarde. Dit lijkt op NumPy's np.full() en is handig om constante basis-Series te maken die je van een echte gegevens-Series kunt aftrekken of waarmee je deze kunt vergelijken.
import pandas as pd
s = pd.Series(5, index=['a', 'b', 'c', 'd'])
print(s)
# a 5
# b 5
# c 5
# d 5
# dtype: int64Automatische uitlijning van indexen
Een van de krachtigste functies van Pandas Series is automatische uitlijning van indexen. Wanneer je twee Series optelt, lijnt Pandas ze vóór de berekening uit op basis van hun labels. Als een label in de ene Series voorkomt maar niet in de andere, is het resultaat bij dat label NaN. Dit voorkomt onopvallende fouten met een verschuiving van één positie die vaak voorkomen bij bewerkingen met NumPy-arrays.
import pandas as pd
a = pd.Series([1, 2], index=['x', 'y'])
b = pd.Series([10, 20], index=['y', 'z'])
print(a + b)
# x NaN
# y 12.0
# z NaNDe lengte en vorm van een Series controleren
len(s) geeft het aantal elementen terug. s.shape geeft een tuple (n,) terug, in overeenstemming met de conventies van NumPy. s.size is hetzelfde als len(s). Gebruik deze controles aan het begin van een pijplijn om te controleren of het laden van je gegevens het verwachte aantal rijen heeft opgeleverd voordat je doorgaat met de analyse.
import pandas as pd
s = pd.Series(range(10))
print(len(s)) # 10
print(s.shape) # (10,)
print(s.size) # 10
print(s.ndim) # 1Een Series naar andere typen converteren
Je kunt een Series terug converteren naar een Python-lijst met s.tolist(), naar een NumPy-array met s.to_numpy() of s.values, en naar een dict met s.to_dict(). Deze conversies zijn nuttig voor interoperabiliteit met bibliotheken die geen Pandas-objecten accepteren en voor het serialiseren van resultaten naar JSON of CSV.
import pandas as pd
s = pd.Series([10, 20, 30], index=['a', 'b', 'c'])
print(s.tolist()) # [10, 20, 30]
print(s.to_numpy()) # [10 20 30]
print(s.to_dict()) # {'a': 10, 'b': 20, 'c': 30}Series versus een DataFrame-kolom
Een enkele kolom van een DataFrame is een Series. Wanneer je df['col'] gebruikt, geeft Pandas een Series terug met dezelfde index als het DataFrame. Omgekeerd kun je een Series met een name rechtstreeks als kolom in een DataFrame invoegen. Als je deze relatie begrijpt, kun je soepel wisselen tussen bewerkingen op Series en DataFrames.
import pandas as pd
df = pd.DataFrame({'a': [1, 2, 3], 'b': [4, 5, 6]})
col = df['a'] # Series
print(type(col)) # <class 'pandas.core.series.Series'>
print(col.values) # [1 2 3]Korte controle
Test je begrip van het maken van Pandas Series uit deze les.
Samenvatting van de les
In deze les heb je geleerd: een Series is een gelabelde 1D-array die is gebaseerd op een NumPy ndarray, je kunt deze maken vanuit lijsten, dicts, NumPy-arrays of scalaire waarden en uitlijning van indexen verwerkt automatisch rekenkundige bewerkingen op basis van labels tussen twee Series. Hierna behandelen we het benaderen van Series-elementen op label met .loc en op positie met .iloc.
Leer Python met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 30
- Lessen
- 120
Veelgestelde vragen
Is de les “Een Series maken” gratis?
Ja — de volledige tekst van “Een Series maken” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Pandas & NumPy Academy wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Pandas & NumPy Academy bevat in totaal 4 lessen.
Wat leer ik in “Een Series maken”?
Maak een Pandas Series vanuit een Python-lijst, een dict en een NumPy-array en bekijk de attributen index en values. Je oefent met Pandas & NumPy Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met Pandas & NumPy Academy te beginnen?
Ervaring vooraf is niet nodig. Pandas & NumPy Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 1 van 4.
Hoe lang duurt de les “Een Series maken”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over Pandas & NumPy Academy?
Ja. Elke les over Pandas & NumPy Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- Een Series maken
- Toegang op basis van labels en posities
- Gevectoriseerde bewerkingen op Series
- Handige Series-methoden