Het binden of combineren van rijen is zeer eenvoudig met de rbind() functie in R.
rbind() staat voor rijbinding. In eenvoudige bewoordingen is dit het samenvoegen van meerdere rijen tot één batch. Het kan het samenvoegen van twee dataframes, vectoren en meer omvatten.
Deze artikel zal ingaan op de toepassingen en toepassingen van de rbind() functie in R-programmeren.
Zonder veel tijd te verspillen, laten we ons storten op het onderwerp!!!
Syntaxis van de rbind() functie
rbind(): De rbind- of rij-bindfunctie wordt gebruikt om de verschillende groepen rijen aan elkaar te binden of te combineren.
rbind(x,x1)
Waar:
- X = the input data.
- X1 = De gegevens die moeten worden gebonden.
Het idee van het binden van rijen met rbind()
Het idee van het binden of combineren van de rijen van meerdere dataframes is zeer nuttig bij gegevensmanipulatie.
Op het onderstaande diagram krijg je zeker een idee van hoe de rbind() functie werkt.
Je kunt zien hoe rijen van verschillende dataframes worden gebonden/gecombineerd door de rbind() functie.
Implementatie van de rbind() functie in R
Zoals je weet, wordt de rbind() functie in R gebruikt om de rijen van verschillende groepen gegevens aan elkaar te binden.
In dit gedeelte gaan we proberen een eenvoudig gegevensframe te construeren en ze samen te binden met behulp van de rbind() functie.
#het creëren van een gegevensframe
Student_details<-c("Mark","John","Fredrick","Floyd","George")
Student_class<-c("High school","College","High school","High school","College")
df1<-data.frame(Student_class,Student_details)
df1
De bovenstaande code zal een eenvoudig gegevensframe construeren met studentgegevens en namen.
Student_class Student_details
1 High school Mark
2 College John
3 High school Fredrick
4 High school Floyd
5 College George
Nou, nu hebben we een gegevensframe van 5 rijen. Laten we een ander gegevensframe maken.
#het creëren van een gegevensframe
Student_details<-c("Bracy","Evin")
Student_class<-c("High school","College")
Student_rank<-c("A","A+")
df2<-data.frame(Student_class,Student_details,Student_rank)
df2
Student_class Student_details
1 High school Bracy
2 College Evin
Nou, nu hebben we 2 gegevensframes met verschillende rij-aantallen (df1 en df2). Laten we de rbind() functie gebruiken om de bovenstaande 2 gegevensframes tot een enkel gegevensframe samen te binden.
Laten we eens kijken hoe het werkt.
Je zult niet geloven dat het hele bindingproces slechts één regel code vereist.
#bindt rijen van 2 invoergegevensframes
rbind(df1,df2)
Student_class Student_details
1 High school Mark
2 College John
3 High school Fredrick
4 High school Floyd
5 College George
6 High school Bracy
7 College Evin
Het resulterende gegevensframe zal een samengebonden versie zijn van beide gegevensframes, zoals getoond in de bovenstaande uitvoer.
Twee gegevensframes van ongelijke lengte samenvoegen met behulp van de bind() functie
Nou, in het vorige gedeelte hebben we de twee rijgroepen samengevoegd.
In dit gedeelte gaan we twee datasets samenvoegen met behulp van de rbind-functie in R.
#creëert het gegevensframe
Student_details<-c("Mark","John","Fredrick","Floyd","George")
Student_class<-c("High school","College","High school","High school","College")
df1<-data.frame(Student_class,Student_details)
df1
Student_class Student_details
1 High school Mark
2 College John
3 High school Fredrick
4 High school Floyd
5 College George
#creëert het gegevensframe
Student_details<-c("Bracy","Evin")
Student_class<-c("High school","College")
Student_rank<-c("A","A+")
df2<-data.frame(Student_class,Student_details,Student_rank)
df2
Student_class Student_details Student_rank
1 High school Bracy A
2 College Evin A+
rbind(df1,df2)
Error in rbind(deparse.level, ...) :
numbers of columns of arguments do not match
Oh wacht, wat is er gebeurd? Waarom geeft de functie een foutmelding?
Als je de regels in de foutmelding leest, staat er dat het aantal kolommen niet overeenkomt.
We hebben 2 kolommen in ‘df1’ en 3 kolommen in ‘df2’.
Geen zorgen! We hebben de bind_rows() functie die ons zal helpen in deze situaties.
De bind_rows() functie om ongelijkmatige datasets te binden
bind_rows() is een functie die deel uitmaakt van het dplyr-pakket. We moeten eerst het dplyr-pakket importeren om deze functie uit te voeren.
We gebruiken dezelfde gegevensframes die in de bovenstaande sectie aanwezig zijn, namelijk df1 en df2. Laten we kijken hoe het werkt.
#installeer vereiste pakketten
install.packages('dplyr')
#importeer bibliotheken
library(dplyr)
#rijen binden
bind_rows(df1,df2)
Student_class Student_details Student_rank
1 High school Mark <NA>
2 College John <NA>
3 High school Fredrick <NA>
4 High school Floyd <NA>
5 College George <NA>
6 High school Bracy A
7 College Evin A+
Je kunt nu zien dat de bind_rows-functie deze twee ongelijke datasets heeft gecombineerd qua kolommen. De lege ruimtes zullen worden gemarkeerd als <NA>.
Het binden van twee datasets met behulp van de rbind() functie
In deze sectie zullen we kijken naar het binden van twee volledige datasets in R.
Laten we kijken hoe het werkt.
We gaan de BOD-dataset gebruiken, omdat deze slechts 6 rijen heeft en je gemakkelijk de gebonden rijen kunt waarnemen.
#bindt twee datasets
rbind(BOD,BOD)
Time demand
1 1 8.3
2 2 10.3
3 3 19.0
4 4 16.0
5 5 15.6
6 7 19.8
---------------
7 1 8.3
8 2 10.3
9 3 19.0
10 4 16.0
11 5 15.6
12 7 19.8
De BOD-dataset heeft 6 rijen. Omdat we de gegevens tweemaal doorgeven, zal de rbind() functie dezelfde rijen binden zoals hierboven getoond.
En vergeet ook niet dat je de bind_rows() functie hebt.
#bindt twee verschillende datasets
bind_rows(BOD,women)
Time demand height weight
1 1 8.3 NA NA
2 2 10.3 NA NA
3 3 19.0 NA NA
4 4 16.0 NA NA
5 5 15.6 NA NA
6 7 19.8 NA NA
7 NA NA 58 115
8 NA NA 59 117
9 NA NA 60 120
10 NA NA 61 123
11 NA NA 62 126
12 NA NA 63 129
13 NA NA 64 132
14 NA NA 65 135
15 NA NA 66 139
16 NA NA 67 142
17 NA NA 68 146
18 NA NA 69 150
19 NA NA 70 154
20 NA NA 71 159
21 NA NA 72 164
Dit zijn voorbeelden die duidelijk laten zien hoe de bind() en bind_rows-functies werken en worden toegepast.
I hope these illustrations helped you in understanding these functions.
Binden van meerdere rijgroepen in R
In dit gedeelte zullen we ons richten op het samenvoegen van meerdere (meer dan 2) rijgroepen met behulp van de functie rbind(). Laten we eens kijken hoe het werkt.
#bindt rijen van 3 datasets
bind_rows(BOD,women,ToothGrowth)
Time demand height weight len supp dose
1 1 8.3 NA NA NA <NA> NA
2 2 10.3 NA NA NA <NA> NA
3 3 19.0 NA NA NA <NA> NA
4 4 16.0 NA NA NA <NA> NA
5 5 15.6 NA NA NA <NA> NA
6 7 19.8 NA NA NA <NA> NA
7 NA NA 58 115 NA <NA> NA
8 NA NA 59 117 NA <NA> NA
9 NA NA 60 120 NA <NA> NA
10 NA NA 61 123 NA <NA> NA
11 NA NA 62 126 NA <NA> NA
12 NA NA 63 129 NA <NA> NA
13 NA NA 64 132 NA <NA> NA
14 NA NA 65 135 NA <NA> NA
15 NA NA 66 139 NA <NA> NA
16 NA NA 67 142 NA <NA> NA
17 NA NA 68 146 NA <NA> NA
18 NA NA 69 150 NA <NA> NA
19 NA NA 70 154 NA <NA> NA
20 NA NA 71 159 NA <NA> NA
Let op hoe alle drie de datasets werden samengevoegd door de bind_rows() functie in R. Dit is de kracht van de bind_rows() functie.
Deze 2 functies hebben eindeloze toepassingen in gegevensmanipulatie in R-programmering.
Samenvattend
De rbind() functie in R en de bind_rows() functie zijn de meest bruikbare functies als het gaat om gegevensmanipulatie.
U kunt eenvoudig twee gegevensframes met hetzelfde aantal kolommen binden met de rbind() functie.
Op dezelfde manier, als de gegevensframes een ongelijk aantal kolommen hebben, kunt u de bind_rows() functie gebruiken samen met het dplyr-pakket.
Nou, dat is alles voor nu, Veel bindplezier!!!
Meer lezen: R-documentatie
Source:
https://www.digitalocean.com/community/tutorials/rbind-function-r