Hoe u kolommen selecteert die een specifieke tekenreeks bevatten in r


U kunt de volgende functies uit het dplyr- pakket in R gebruiken om kolommen te selecteren die een specifieke tekenreeks bevatten:

Methode 1: Selecteer kolommen die een specifieke tekenreeks bevatten

 df %>%
  select(matches(" string1 "))

Methode 2: Selecteer kolommen die een of meerdere tekenreeksen bevatten

 df %>%
  select(matches(" string1|string2|string3 "))

De volgende voorbeelden laten zien hoe u elk van deze methoden in de praktijk kunt gebruiken met het volgende dataframe in R:

 #create data frame
df <- data. frame (mavs=c(12, 10, 14, 19, 22, 25, 29),
                 cavs=c(22, 41, 14, 15, 15, 19, 22),
                 hornets=c(8, 8, 12, 14, 15, 13, 12),
                 spurs=c(10, 12, 12, 16, 22, 28, 30),
                 nets=c(9, 7, 10, 22, 28, 23, 25))

#view data frame
df

  mavs cavs hornets spurs nets
1 12 22 8 10 9
2 10 41 8 12 7
3 14 14 12 12 10
4 19 15 14 16 22
5 22 15 15 22 28
6 25 19 13 28 23
7 29 22 12 30 25

Voorbeeld 1: Selecteer kolommen die een specifieke tekenreeks bevatten

De volgende code laat zien hoe u de functie matches() gebruikt om alleen kolommen te selecteren die ergens in hun naam de tekenreeks „avs“ bevatten:

 library (dplyr)

#select all columns that contain "avs" in the name
df %>%
  select(matches(" avs "))

  mavs cavs
1 12 22
2 10 41
3 14 14
4 19 15
5 22 15
6 25 19
7 29 22

Alleen kolommen met ‚avs‘ in de naam worden geretourneerd.

In dit geval zijn „mavs“ en „cavs“ de enige geretourneerde kolommen.

Voorbeeld 2: Selecteer kolommen die een of meerdere tekenreeksen bevatten

De volgende code laat zien hoe u de functie matches() gebruikt om alleen kolommen te selecteren die ergens in hun naam ‚avs‘ of ‚ets‘ bevatten:

 library (dplyr)

#select all columns that contain "avs" or "ets" in the name
df %>%
  select(matches(" avs|ets "))

  mavs cavs hornets nets
1 12 22 8 9
2 10 41 8 7
3 14 14 12 10
4 19 15 14 22
5 22 15 15 28
6 25 19 13 23
7 29 22 12 25

Alleen kolommen met ‚avs‘ of ‚ets‘ in de naam worden geretourneerd.

Merk op dat de verticale balk ( | ) de “ OR “ operator is in R.

Voel je vrij om zoveel van deze “OR”-operatoren aan elkaar te koppelen als je wilt, om kolommen te selecteren die een van de vele verschillende tekenreeksen bevatten.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken kunt uitvoeren met dplyr:

Kolommen op naam selecteren met dplyr
Kolommen selecteren op index met behulp van dplyr
Hoe select_if te gebruiken met meerdere voorwaarden in dplyr

Einen Kommentar hinzufügen

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