Hoe pandas op zijn plaats te gebruiken apply().


De functie pandas apply() kan worden gebruikt om een functie toe te passen op rijen of kolommen van een pandas DataFrame.

Deze functie verschilt van andere functies zoals drop() en Replace() die een inplace-argument bieden:

 df. drop ([' column1 '], inplace= True )

df. rename ({' old_column ': ' new_column '}, inplace= True )

De functie apply() heeft geen inplace-argument, dus we moeten de volgende syntaxis gebruiken om een inplace DataFrame te transformeren:

 df = df. apply ( lambda x: x* 2 )

De volgende voorbeelden laten zien hoe u deze syntaxis in de praktijk kunt gebruiken met de volgende panda’s DataFrame:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19, 23, 25, 29],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
df

        points assists rebounds
0 25 5 11
1 12 7 8
2 15 7 10
3 14 9 6
4 19 12 6
5 23 9 5
6 25 9 9
7 29 4 12

Voorbeeld 1: Gebruik apply() voor een kolom

De volgende code laat zien hoe u apply() gebruikt om een dataframekolom op zijn plaats te transformeren:

 #multiply all values in 'points' column by 2 in place
df. loc [:, ' points '] = df. points . apply ( lambda x: x* 2 )

#view updated DataFrame
df

points assists rebounds
0 50 5 11
1 24 7 8
2 30 7 10
3 28 9 6
4 38 12 6
5 46 9 5
6 50 9 9
7 58 4 12

Voorbeeld 2: Gebruik apply() voor meerdere kolommen

De volgende code laat zien hoe u apply() gebruikt om meerdere dataframekolommen op hun plaats te transformeren:

 multiply all values in 'points' and 'rebounds' column by 2 in place
df[[' points ', ' rebounds ']] = df[[' points ', ' rebounds ']]. apply ( lambda x: x* 2 )

#view updated DataFrame
df

	points assists rebounds
0 50 5 22
1 24 7 16
2 30 7 20
3 28 9 12
4 38 12 12
5 46 9 10
6 50 9 18
7 58 4 24

Voorbeeld 3: Gebruik apply() voor alle kolommen

De volgende code laat zien hoe u apply() gebruikt om alle kolommen in het dataframe op hun plaats te transformeren:

 #multiply values in all columns by 2
df = df. apply ( lambda x: x* 2 )

#view updated DataFrame
df

	points assists rebounds
0 50 10 22
1 24 14 16
2 30 14 20
3 28 18 12
4 38 24 12
5 46 18 10
6 50 18 18
7 58 8 24

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende functies in panda’s kunt uitvoeren:

Hoe de som van kolommen in Panda’s te berekenen
Hoe het gemiddelde van kolommen in Panda’s te berekenen
Hoe u de maximale waarde van kolommen in Panda’s kunt vinden

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert