O que é e como usar a função R rbind?
A função R rbind()
pode ser usada para combinar conjuntos de dados que possuem o mesmo número de colunas.
O que é a função rbind()
em R?
A função R rbind()
serve para combinar dados linha por linha. Ela costuma ser usada para adicionar novas informações em um data frame existente. Esse é um recurso prático para os usuários que atualizam os dados regularmente e precisam integrá-los a um conjunto que já foi criado.
A função R rbind()
também é usada para combinar dois data frames com a mesma estrutura, seja para facilitar uma análise mais detalhada ou juntar partes diferentes de um conjunto de dados. Observe que rbind()
funciona de maneira eficiente com grupos menores de dados, enquanto pacotes como dplyr
oferecem melhor desempenho para conjuntos maiores.
Sintaxe da função R rbind()
Você pode inserir quantos data frames quiser na sintaxe da função rbind()
para combiná-los. Apenas certifique-se de que todos eles tenham o mesmo número de colunas e que essas colunas tenham os mesmos nomes.
rbind(data.frame1, data.frame2, ...)
ROs argumentos data.frame1
, data.frame2
e demais representam os data frames ou as listas de data frames que serão combinados linha por linha.
Exemplos de uso da função rbind()
em R
A seguir, analisaremos alguns exemplos de como usar a função R rbind()
. Primeiro, vamos criar um data frame com duas colunas:
#Criação do data frame 1
nomes<-c("Débora","Thomas","Mário","Laura","Rebeca")
cargos<-c("analista","gerente","analista","gerente","analista")
df1<-data.frame(nomes, cargos)
df1
RO resultado será o seguinte:
nomes cargos
1 Débora analista
2 Thomas gerente
3 Mário analista
4 Laura gerente
5 Rebeca analista
REm seguida, definimos o segundo data frame com o mesmo número de colunas:
#Criação do data frame 2
nomes<-c("Eva","João")
cargos<-c("gerente","analista")
df2<-data.frame(nomes, cargos)
df2
RResultado:
nomes cargos
1 Eva gerente
2 João analista
RAgora, combinamos os dois data frames:
#Combinação das linhas de df1 e df2
rbind(df1,df2)
RO resultado será o seguinte:
nomes cargos
1 Débora analista
2 Thomas gerente
3 Mário analista
4 Laura gerente
5 Rebeca analista
6 Eva gerente
7 João analista
RData frames com número diferente de colunas
A seguir, mostraremos o que acontece quando se tenta combinar dois data frames com um número diferente de colunas.
Primeiro, vamos criar novamente um data frame com duas colunas:
#Criação do data frame 1
nomes<-c("Débora","Thomas","Mário","Laura","Rebeca")
cargos<-c("analista","gerente","analista","gerente","analista")
df1<-data.frame(nomes, cargos)
df1
RResultado:
nomes cargos
1 Débora analista
2 Thomas gerente
3 Mário analista
4 Laura gerente
5 Rebeca analista
RAgora, vamos criar um data frame com três colunas:
#Criação do data frame 2
nomes<-c("Eva","João")
cargos<-c("gerente","analista")
idades<-c("52","38")
df2<-data.frame(nomes, cargos, idades)
df2
RResultado:
nomes cargos idades
1 Eva gerente 52
2 João analista 38
RAo usarmos a função rbind()
em R para combinar os dois data frames, receberemos a seguinte mensagem de erro:
rbind(df1,df2)
Error in rbind(deparse.level, ...) :
numbers of columns of arguments do not match
RO erro revela que não é possível usar a função R rbind()
para combinar os dois data frames, pois eles apresentam números diferentes de colunas. No entanto, podemos usar a função bind_rows()
do pacote dplyr
para fazer a combinação desejada.
Combinar data frames com número diferente de colunas
Os data frames do exemplo acima podem ser combinados usando a função bind_rows()
.
#Instalação do dplyr
install.packages('dplyr')
#Importação de bibliotecas
library(dplyr)
#Combinação de linhas
bind_rows(df1,df2)
RO resultado será o seguinte:
nomes cargos idades
1 Débora analista <NA>
2 Thomas gerente <NA>
3 Mário analista <NA>
4 Laura gerente <NA>
5 Rebeca analista <NA>
6 Eva gerente 52
7 João analista 38
RA função bind_rows()
foi capaz de combinar os dois data frames. Os campos vazios foram marcados com a expressão <NA>
. Essa é uma boa alternativa à função rbind()
em R se você precisa combinar dois data frames com números diferentes de colunas.
Rápido e escalável, confie na hospedagem da IONOS, que inclui domínio grátis no primeiro ano e endereço de e-mail!
- Domínio
- SSL Wildcard
- Suporte 24 horas