So vergleichen sie zwei spalten in r: mit beispielen


Häufig möchten Sie möglicherweise zwei Spalten in R vergleichen und die Vergleichsergebnisse in eine dritte Spalte schreiben.

Sie können dies ganz einfach mit der folgenden Syntax tun:

 df$ new_col <- ifelse (df$ col1 > df$ col2 , ' A ',
ifelse (df$ col1 < df$ col2 , ' B ', ' C '))

Diese einzelne Codezeile bewirkt Folgendes:

  • Wenn Spalte 1 größer als Spalte 2 ist, schreiben Sie „A“ als Ausgabe in die dritte Spalte.
  • Andernfalls, wenn Spalte 1 kleiner als Spalte 2 ist, schreiben Sie „B“ als Ausgabe.
  • Andernfalls schreiben Sie „C“ als Ausgabe.

Das folgende Beispiel zeigt, wie dieser Code in der Praxis verwendet wird.

Beispiel: Vergleichen Sie zwei Spalten in R

Angenommen, wir haben den folgenden Datenrahmen, der die Anzahl der Tore zeigt, die zwei Fußballmannschaften in fünf verschiedenen Spielen erzielt haben:

 #create data frame
df <- data.frame(A_points=c(1, 3, 3, 3, 5),
                 B_points=c(4, 5, 2, 3, 2))

#view data frame
df

  A_points B_points
1 1 4
2 3 5
3 3 2
4 3 3
5 5 2

Mit dem folgenden Code können wir die Anzahl der Tore pro Zeile vergleichen und den Matchwinner in einer dritten Spalte anzeigen:

 #compare A_points and B_points and output results to new column titled winner
df$winner <- ifelse (df$A_points > df$B_points, ' A ',
               ifelse (df$A_points < df$B_points, ' B ', ' Tie '))

#view data frame
df

  A_points B_points winner
1 1 4 B
2 3 5 B
3 3 2 A
4 3 3 Tie
5 5 2 A

Die Vergleichsergebnisse werden in der neuen Spalte Gewinner angezeigt.

Zusätzliche Ressourcen

So stapeln Sie Datenrahmenspalten in R
So kombinieren Sie in R zwei Spalten zu einer
So iterieren Sie über Spaltennamen in R

Einen Kommentar hinzufügen

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