A: hoe u de functie which() gebruikt met meerdere voorwaarden
U kunt de volgende methoden gebruiken om de functie who() te gebruiken met meerdere voorwaarden in R:
Methode 1: who() met meerdere voorwaarden met behulp van AND
new_df <- df[which(df$my_column >= 14 & df$my_column <= 25), ]
Methode 2: who() met meerdere voorwaarden met behulp van OR
new_df <- df[which(df$my_column < 14 | df$my_column > 25), ]
De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken met het volgende dataframe:
#create data frame
df <- data. frame (player=c('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'),
points=c(10, 13, 13, 15, 19, 22, 24, 25, 29, 35))
#view data frame
df
player points
1 to 10
2 B 13
3 C 13
4 D 15
5 E 19
6 F 22
7 G 24
8:25 a.m.
9 I 29
10 D 35
Voorbeeld 1: who() met meerdere voorwaarden met AND
De volgende code laat zien hoe u de functie who() gebruikt om het dataframe zo te filteren dat het alleen rijen bevat waarvan de waarde in de puntenkolom groter is dan of gelijk is aan 14 en kleiner dan of gelijk is aan 25:
#filter for players who score between 14 and 25 points
new_df <- df[which(df$points >= 14 & df$points <= 25), ]
#view results
new_df
player points
4 D 15
5 E 19
6 F 22
7 G 24
8:25 a.m.
Houd er rekening mee dat het gegevensframe zo wordt gefilterd dat het alleen rijen bevat waarvan de waarde in de puntenkolom groter is dan of gelijk is aan 14 en kleiner dan of gelijk is aan 25.
Merk op dat de & -operator wordt gebruikt als een „en“-instructie in R.
Voorbeeld 2: who() met meerdere voorwaarden met behulp van OR
De volgende code laat zien hoe u de functie who() gebruikt om het dataframe zo te filteren dat het alleen rijen bevat waarvan de waarde in de puntkolom kleiner is dan 14 of groter dan 25:
Anders wordt de waarde „slecht“ toegekend:
#filter for players who score less than 14 or greater than 25 points
new_df <- df[which(df$points < 14 | df$points > 25), ]
#view results
new_df
player points
1 to 10
2 B 13
3 C 13
9 I 29
10 D 35
Houd er rekening mee dat het gegevensframe wordt gefilterd zodat het alleen rijen bevat waarvan de waarde in de puntenkolom kleiner is dan 14 of groter dan 25.
Merk op dat de | De operator wordt gebruikt als een „of“ -instructie in R.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in R kunt uitvoeren:
Hoe gebruik je een If-instructie met meerdere voorwaarden in R
Hoe schrijf je een geneste If Else-instructie in R
Hoe schrijf je een geneste For-lus in R