So wählen sie spalten aus, die eine bestimmte zeichenfolge in r enthalten


Sie können die folgenden Funktionen aus dem dplyr- Paket in R verwenden, um Spalten auszuwählen, die eine bestimmte Zeichenfolge enthalten:

Methode 1: Wählen Sie Spalten aus, die eine bestimmte Zeichenfolge enthalten

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

Methode 2: Wählen Sie Spalten aus, die eine von mehreren Zeichenfolgen enthalten

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

Die folgenden Beispiele zeigen, wie jede dieser Methoden in der Praxis mit dem folgenden Datenrahmen in R verwendet wird:

 #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

Beispiel 1: Wählen Sie Spalten aus, die eine bestimmte Zeichenfolge enthalten

Der folgende Code zeigt, wie Sie mit der Funktion „matches()“ nur Spalten auswählen, deren Namen irgendwo die Zeichenfolge „avs“ enthalten:

 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

Es werden nur Spalten mit „avs“ im Namen zurückgegeben.

In diesem Fall sind „mavs“ und „cavs“ die einzigen zurückgegebenen Spalten.

Beispiel 2: Wählen Sie Spalten aus, die eine von mehreren Zeichenfolgen enthalten

Der folgende Code zeigt, wie Sie mit der Funktion „matches()“ nur Spalten auswählen, deren Namen irgendwo „avs“ oder „ets“ enthalten:

 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

Es werden nur Spalten mit „avs“ oder „ets“ im Namen zurückgegeben.

Beachten Sie, dass der vertikale Balken ( | ) der „ ODER “-Operator in R ist.

Sie können beliebig viele dieser „ODER“-Operatoren verketten, um Spalten auszuwählen, die eine von vielen verschiedenen Zeichenfolgen enthalten.

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben mit dplyr ausführen:

So wählen Sie mit dplyr Spalten nach Namen aus
So wählen Sie Spalten nach Index mit dplyr aus
So verwenden Sie select_if mit mehreren Bedingungen in dplyr

Einen Kommentar hinzufügen

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