A: hoe gebruik je de if-instructie met meerdere voorwaarden?


U kunt de volgende methoden gebruiken om een nieuwe kolom in R te maken met behulp van een IF-instructie met meerdere voorwaarden:

Methode 1: If-instructie met meerdere voorwaarden met behulp van OR

 df$new_var <- ifelse(df$var1>15 | df$var2>8, " value1 ", " value2 ")

Methode 2: If-instructie met meerdere voorwaarden met AND

 df$new_var <- ifelse(df$var1>15 & df$var2>8, “ value1 ”, “ value2 ”) 

De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken met het volgende dataframe:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
                 points=c(8, 8, 10, 13, 17, 19, 22, 25),
                 assists=c(5, 10, 9, 6, 8, 10, 11, 12))

#view data frame
df

  team points assists
1 to 8 5
2 to 8 10
3 to 10 9
4 to 13 6
5 B 17 8
6 B 19 10
7 B 22 11
8 B 25 12

Voorbeeld 1: If-instructie met meerdere voorwaarden met OR

De volgende code laat zien hoe u een nieuwe kolom kunt maken met de naam beoordeling , die een ‚goede‘ waarde toekent als de puntenkolom groter is dan 15 of de assistskolom groter is dan 8.

Anders wordt de waarde „slecht“ toegekend:

 #create new "rating" column using if statement with multiple conditions
df$rating <- ifelse(df$points>15 | df$assists>8, " good ", " bad ")

#view updated data frame
df

  team points assists rating
1 A 8 5 bad
2 to 8 10 good
3 A 10 9 good
4 A 13 6 bad
5 B 17 8 good
6 B 19 10 good
7 B 22 11 good
8 B 25 12 good

Elke speler krijgt de waarde „goed“ of „slecht“ in de nieuw aangemaakte beoordelingskolom .

Merk op dat de | De operator wordt gebruikt als een „of“ -instructie in R.

Voorbeeld 2: If-instructie met meerdere voorwaarden met AND

De volgende code laat zien hoe u een nieuwe kolom kunt maken met de naam beoordeling , die een ‚goede‘ waarde toekent als de kolom punten groter is dan 15 en de kolom assists groter is dan 8.

Anders wordt de waarde „slecht“ toegekend:

 #create new "rating" column using if statement with multiple conditions
df$rating <- ifelse(df$points>15 & df$assists>8, “ good ”, “ bad ”)

#view updated data frame
df

  team points assists rating
1 A 8 5 bad
2 A 8 10 bad
3 A 10 9 bad
4 A 13 6 bad
5 B 17 8 bad
6 B 19 10 good
7 B 22 11 good
8 B 25 12 good

Elke speler krijgt de waarde „goed“ of „slecht“ in de nieuw aangemaakte beoordelingskolom .

Merk op dat de & -operator wordt gebruikt als een „en“-instructie in R.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in R kunt uitvoeren:

Hoe schrijf je een geneste If Else-instructie in R
Hoe schrijf je een geneste For-lus in R

Einen Kommentar hinzufügen

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