R의 rbind() 함수 - 간편한 행 바인딩
R의 rbind() 함수를 사용하면 행을 바인딩하거나 결합하는 것이 매우 쉽습니다.
rbind()는 행 바인딩을 나타냅니다. 간단히 말해서 여러 행을 결합하여 단일 배치를 형성합니다. 여기에는 두 개의 데이터 프레임, 벡터 등을 결합하는 것이 포함될 수 있습니다.
이 기사에서는 R 프로그래밍에서 rbind() 함수의 사용 및 응용에 대해 설명합니다.
많은 시간을 낭비하지 않고 주제로 들어가자!!!
rbind() 함수의 구문
rbind(): rbind 또는 행 바인드 함수는 여러 행 그룹을 함께 묶거나 결합하는 데 사용됩니다.
rbind(x,x1)
어디:
- X=입력 데이터.
- X1 = 데이터를 바인딩해야 합니다.
rbind()를 사용하여 행을 바인딩하는 아이디어
여러 데이터 프레임의 행을 바인딩하거나 결합한다는 아이디어는 데이터 조작에 매우 유용합니다.
아래 다이어그램은 확실히 rbind() 함수 작업에 대한 아이디어를 얻을 것입니다.
서로 다른 데이터 프레임의 행이 rbind() 함수에 의해 바인딩/결합되는 방식을 확인할 수 있습니다.
R에서 rbind() 함수 구현하기
알다시피 R의 rbind() 함수는 서로 다른 데이터 그룹의 행을 바인딩하는 데 사용됩니다.
이 섹션에서는 간단한 데이터 프레임을 구성하고 rbind() 함수를 사용하여 바인딩해 보겠습니다.
#creating a data frame
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
자, 이제 우리는 5행의 데이터 프레임을 갖게 되었습니다. 다른 데이터 프레임을 만들어 봅시다.
#creating a dataframe
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
자, 이제 행 개수가 다른 2개의 데이터 프레임(df1 및 df2)이 있습니다. rbind() 함수를 사용하여 위의 2개의 데이터 프레임을 단일 데이터 프레임으로 바인딩합니다.
어떻게 작동하는지 봅시다.
전체 바인딩 프로세스에 코드 한 줄만 필요하다고 생각하지 않을 것입니다.
#binds rows of 2 input data frames
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
결과 데이터 프레임은 위의 출력과 같이 두 데이터 프레임의 결합된 버전이 됩니다.
bind() 함수를 사용하여 길이가 다른 두 데이터 프레임 바인딩
이전 섹션에서는 두 행 그룹을 함께 결합했습니다.
이 섹션에서는 R의 rbind 함수를 사용하여 두 데이터 세트를 함께 결합할 것입니다.
#creates the data frame
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
#creats the data frame
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
오 잠깐, 무슨 일이야? 함수에서 오류가 발생하는 이유는 무엇입니까?
오류의 줄을 읽으면 열 수가 일치하지 않는다는 내용입니다.
'df1'에 2개의 열이 있고 'df2'에 3개의 열이 있습니다.
걱정하지 마세요! 우리는 이러한 시나리오에서 우리를 도울 bind_rows() 함수를 가지고 있습니다.
고르지 않은 데이터 세트를 묶는 bind_rows() 함수
bind_rows()는 dplyr 패키지의 일부인 함수입니다. 이 기능을 실행하려면 먼저 dplyr 패키지를 가져와야 합니다.
위 섹션, 즉 df1 및 df2에 있는 동일한 데이터 프레임을 사용하고 있습니다. 어떻게 작동하는지 봅시다.
#install required packages
install.packages('dplyr')
#import libraries
library(dplyr)
#bind the rows
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+
이제 bind_rows 함수가 열 측면에서 이 두 가지 다른 데이터 세트를 결합한 것을 볼 수 있습니다. 빈 공간은
rbind() 함수를 사용하여 두 데이터 세트 바인딩
이 섹션에서는 R에서 두 개의 전체 데이터 세트의 바인딩을 살펴볼 것입니다.
어떻게 작동하는지 봅시다.
행이 6개뿐이고 바인딩된 행을 쉽게 관찰할 수 있으므로 BOD 데이터 세트를 사용할 것입니다.
#binds two data sets
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
BOD 데이터 세트에는 6개의 행이 있습니다. 데이터를 두 번 전달하므로 rbind() 함수는 위에 표시된 것과 동일한 행을 바인딩합니다.
또한 bind_rows() 함수도 있다는 것을 잊지 마십시오.
#binds two different 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
다음은 bind() 및 bind_rows 함수의 작동 및 적용을 명확하게 보여주는 예입니다.
이 그림이 이러한 기능을 이해하는 데 도움이 되었기를 바랍니다.
R에서 여러 행 그룹 바인딩
이 섹션에서는 rbind() 함수를 사용하여 여러(2개 이상) 행 그룹을 바인딩하는 데 중점을 둘 것입니다. 어떻게 작동하는지 봅시다.
#binds rows of 3 data sets
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
R의 bind_rows() 함수에 의해 세 개의 데이터 세트가 어떻게 결합 또는 결합되었는지 관찰하십시오. 이것이 bind_rows() 함수의 아름다움입니다.
이 두 함수는 R 프로그래밍에서 데이터 조작에 무한한 응용 프로그램을 가지고 있습니다.
마무리
R의 rbind() 함수와 bind_rows() 함수는 데이터 조작과 관련하여 가장 유용한 함수입니다.
rbind() 함수를 사용하여 동일한 열 수의 두 데이터 프레임을 쉽게 바인딩할 수 있습니다.
같은 방식으로 데이터 프레임의 열 수가 같지 않은 경우 dplyr 패키지와 함께 bind_rows() 함수를 사용할 수 있습니다.
자, 여기까지입니다. 해피 바인딩!!!
더 읽기: R 문서