Verketten Sie zwei Spalten in R

Sheeraz Gul 21 Juni 2023
  1. Verwenden Sie die Funktion Paste(), um zwei Spalten in R zu verketten
  2. Verwenden Sie die Unite()-Funktion von Tidyr, um zwei Spalten in R zu verketten
Verketten Sie zwei Spalten in R

Manchmal ist es erforderlich, die Werte einer Spalte mit den Werten der anderen Spalte zu verketten; R hat zwei Möglichkeiten, die beiden Spalten zu verketten. Dieses Tutorial zeigt zwei Möglichkeiten zum Verketten von Datenrahmenspalten in R.

Verwenden Sie die Funktion Paste(), um zwei Spalten in R zu verketten

Paste() ist eine eingebaute Funktion von base R, die zwei Spalten in einem Datenrahmen verketten kann. Es wird eine neue Spalte erstellt und zwei als Parameter übergebene Spalten mit einem Trennzeichen kombiniert.

Siehe Beispiel:

Delftstack <- data.frame(Name=c('Jack', 'John', 'Mike', 'Michelle', 'Jhonny'),
                         LastName=c('Danials', 'Cena', 'Chandler', 'McCool', 'Nitro'),
                         Id=c(101, 102, 103, 104, 105),
                         Designation=c('CEO', 'Project Manager', 'Senior Dev', 'Junior Dev', 'Intern'))

print('The dataframe before concatenating the columns:-')
Delftstack


#combine name and ID into one column
Delftstack$Id_Name <- paste(Delftstack$Id, Delftstack$Name, sep="_")


print('The dataframe after concatenating the columns:-')
Delftstack

Der obige Code verkettet die Spalten Id und Name zur neuen Spalte Id_Name. Wir erstellen eine neue Spalte und verwenden dann die Funktion Einfügen mit Spaltennamen und einem Trennzeichen, um zwei Spalten zu verketten.

Der Spaltenname wird durch datframe$columnname bezeichnet. Siehe die Ausgabe:

[1] "The dataframe before concatenating the columns:-"
      Name LastName  Id     Designation
1     Jack  Danials 101             CEO
2     John     Cena 102 Project Manager
3     Mike Chandler 103      Senior Dev
4 Michelle   McCool 104      Junior Dev
5   Jhonny    Nitro 105          Intern

[1] "The dataframe after concatenating the columns:-"
      Name LastName  Id     Designation      Id_Name
1     Jack  Danials 101             CEO     101_Jack
2     John     Cena 102 Project Manager     102_John
3     Mike Chandler 103      Senior Dev     103_Mike
4 Michelle   McCool 104      Junior Dev 104_Michelle
5   Jhonny    Nitro 105          Intern   105_Jhonny

Wenn Sie möchten, können Sie die vorherigen Spalten nach der Verkettung entfernen.

New_Delftstack <- Delftstack[c("Id_Name", "LastName", "Designation")]
print('The dataframe after concatenating the columns:-')
New_Delftstack

Der obige Code entfernt die vorherigen Spalten und gibt uns einen neuen Datenrahmen mit einer verketteten Spalte. Siehe Ausgabe:

[1] "The dataframe after concatenating the columns:-"
       Id_Name LastName     Designation
1     101_Jack  Danials             CEO
2     102_John     Cena Project Manager
3     103_Mike Chandler      Senior Dev
4 104_Michelle   McCool      Junior Dev
5   105_Jhonny    Nitro          Intern

Verwenden Sie die Unite()-Funktion von Tidyr, um zwei Spalten in R zu verketten

Das tidyr-Paket in R hat eine Funktion unite(), die zwei Spalten in R verketten kann. Sie nimmt den Datenrahmen, den neuen Spaltennamen und die verketteten Spalten als Parameter.

Siehe Beispiel:

library(tidyr)

Delftstack <- data.frame(Name=c('Jack', 'John', 'Mike', 'Michelle', 'Jhonny'),
                         LastName=c('Danials', 'Cena', 'Chandler', 'McCool', 'Nitro'),
                         Id=c(101, 102, 103, 104, 105),
                         Designation=c('CEO', 'Project Manager', 'Senior Dev', 'Junior Dev', 'Intern'))

print('The dataframe before concatenating the columns:-')
Delftstack


print('The dataframe after concatenating the columns:-')
unite(Delftstack, Id_Name, c(Id, Name))

Der obige Code verkettet zwei Spalten und entfernt die vorherigen Spalten. Siehe Ausgabe:

[1] "The dataframe before concatenating the columns:-"
      Name LastName  Id     Designation
1     Jack  Danials 101             CEO
2     John     Cena 102 Project Manager
3     Mike Chandler 103      Senior Dev
4 Michelle   McCool 104      Junior Dev
5   Jhonny    Nitro 105          Intern

[1] "The dataframe after concatenating the columns:-"
       Id_Name LastName     Designation
1     101_Jack  Danials             CEO
2     102_John     Cena Project Manager
3     103_Mike Chandler      Senior Dev
4 104_Michelle   McCool      Junior Dev
5   105_Jhonny    Nitro          Intern

Wie wir sehen können, ist unite() praktischer, wenn die Spalten entfernt werden.

Sheeraz Gul avatar Sheeraz Gul avatar

Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.

LinkedIn Facebook

Verwandter Artikel - R Column