Skip to contents

Combines two data frames or matrices by rows even when they do not share the same columns. Columns present in one input but absent in the other are added and filled with NA before binding. Row names from both inputs are preserved unless they would produce duplicates, in which case default integer row names are used.

Usage

rbind_all(df1, df2)

Arguments

df1

A data frame or matrix.

df2

A data frame or matrix.

Value

A data frame containing all rows from df1 followed by all rows from df2, with the union of both column sets. Cells where a column did not exist in the original input are NA.

Examples

df1 <- generate_correlation_matrix(n = 10)
df2 <- generate_correlation_matrix(n = 10)
names(df2)[4] <- "X11"
rbind_all(df1 = df1, df2 = df2)
#>         X1       X2       X3      X4        X5       X6       X7       X8        X9       X10     X11
#> 1  -1.2302 -1.44044  1.00694  1.1640 -0.117938 -0.54010 -0.12828  0.53458  2.083889  0.006756      NA
#> 2   1.5449  1.46931  0.59323  1.8123  0.002193 -0.75066 -1.49667  1.33014 -1.807998 -1.015929      NA
#> 3   1.6422  1.04344  0.76423 -0.8823  2.812118 -0.64477 -0.67503  0.90787  0.418324 -0.112648      NA
#> 4  -1.1403 -1.40126 -0.82031 -1.7621 -0.378538  0.13740 -1.87370  0.37844  0.471128 -0.219776      NA
#> 5  -1.6193  0.38372  0.08117 -0.8926 -0.264401 -0.41152  1.48348 -0.41415 -0.031112 -0.727691      NA
#> 6  -0.4876  0.25287 -0.26111 -0.5170 -1.054339 -0.42325  0.45420 -1.33966  1.523717 -0.125981      NA
#> 7   0.1999  1.36043  0.17759  0.9590 -1.468812  0.56001  2.55258  0.66378  0.504439 -1.463682      NA
#> 8  -0.9117 -0.13997 -0.49730  0.9871  0.759596  0.08916  1.44350  0.47399 -0.037169 -0.369100      NA
#> 9   0.5435 -0.44830  0.78827  0.3708  1.386392  0.97267  1.07456 -0.14076 -0.168658  0.256216      NA
#> 10 -1.4361 -0.76972  0.04076  0.8646  0.718422  0.06174 -1.74121  0.48963 -0.009437 -0.173754      NA
#> 11  0.7109  1.33234  0.04390      NA  1.594708  0.07943  0.26931  0.70335 -0.893242 -0.451990 -0.3346
#> 12 -0.6346 -0.76191  0.44462      NA  0.017036  0.90498 -0.13189 -0.45032 -1.096836  0.246160 -2.1658
#> 13 -1.5139  0.01207 -0.99944      NA  0.549158  0.30899  0.08178 -0.67261  0.897815  0.738328  1.3649
#> 14 -0.4283 -0.75317 -0.29605      NA -1.055438  0.01891 -2.25635 -0.89035 -1.064214  0.094039  0.2717
#> 15  0.5223  0.06197 -0.38339      NA -0.007801  0.13711  1.27275  0.51160 -0.126197  1.805744  1.2011
#> 16 -0.9181 -0.17917  1.20849      NA  2.269799 -0.01723 -0.29134 -1.13833  2.369882 -0.472317  1.7183
#> 17  0.3803  0.64014  1.10313      NA -1.939014  0.97570  0.58624  0.53118 -0.538031  1.094108  0.6459
#> 18  1.4240  0.62470  0.53229      NA  0.678750  0.66930 -1.15561  1.75538  0.816988  0.805324  1.0644
#> 19  2.0767 -0.09844  1.12352      NA  0.204884  0.15273 -0.87619  0.74374 -2.278520  0.861011  0.7846
#> 20  0.2929 -0.05698 -1.43152      NA  0.859434 -0.46135  0.21240 -0.08201  0.353768 -0.978242 -1.1692
row.names(df1) <- 21:30
rbind_all(df1 = df1, df2 = df2)
#>         X1       X2       X3      X4        X5       X6       X7       X8        X9       X10     X11
#> 21 -1.2302 -1.44044  1.00694  1.1640 -0.117938 -0.54010 -0.12828  0.53458  2.083889  0.006756      NA
#> 22  1.5449  1.46931  0.59323  1.8123  0.002193 -0.75066 -1.49667  1.33014 -1.807998 -1.015929      NA
#> 23  1.6422  1.04344  0.76423 -0.8823  2.812118 -0.64477 -0.67503  0.90787  0.418324 -0.112648      NA
#> 24 -1.1403 -1.40126 -0.82031 -1.7621 -0.378538  0.13740 -1.87370  0.37844  0.471128 -0.219776      NA
#> 25 -1.6193  0.38372  0.08117 -0.8926 -0.264401 -0.41152  1.48348 -0.41415 -0.031112 -0.727691      NA
#> 26 -0.4876  0.25287 -0.26111 -0.5170 -1.054339 -0.42325  0.45420 -1.33966  1.523717 -0.125981      NA
#> 27  0.1999  1.36043  0.17759  0.9590 -1.468812  0.56001  2.55258  0.66378  0.504439 -1.463682      NA
#> 28 -0.9117 -0.13997 -0.49730  0.9871  0.759596  0.08916  1.44350  0.47399 -0.037169 -0.369100      NA
#> 29  0.5435 -0.44830  0.78827  0.3708  1.386392  0.97267  1.07456 -0.14076 -0.168658  0.256216      NA
#> 30 -1.4361 -0.76972  0.04076  0.8646  0.718422  0.06174 -1.74121  0.48963 -0.009437 -0.173754      NA
#> 1   0.7109  1.33234  0.04390      NA  1.594708  0.07943  0.26931  0.70335 -0.893242 -0.451990 -0.3346
#> 2  -0.6346 -0.76191  0.44462      NA  0.017036  0.90498 -0.13189 -0.45032 -1.096836  0.246160 -2.1658
#> 3  -1.5139  0.01207 -0.99944      NA  0.549158  0.30899  0.08178 -0.67261  0.897815  0.738328  1.3649
#> 4  -0.4283 -0.75317 -0.29605      NA -1.055438  0.01891 -2.25635 -0.89035 -1.064214  0.094039  0.2717
#> 5   0.5223  0.06197 -0.38339      NA -0.007801  0.13711  1.27275  0.51160 -0.126197  1.805744  1.2011
#> 6  -0.9181 -0.17917  1.20849      NA  2.269799 -0.01723 -0.29134 -1.13833  2.369882 -0.472317  1.7183
#> 7   0.3803  0.64014  1.10313      NA -1.939014  0.97570  0.58624  0.53118 -0.538031  1.094108  0.6459
#> 8   1.4240  0.62470  0.53229      NA  0.678750  0.66930 -1.15561  1.75538  0.816988  0.805324  1.0644
#> 9   2.0767 -0.09844  1.12352      NA  0.204884  0.15273 -0.87619  0.74374 -2.278520  0.861011  0.7846
#> 10  0.2929 -0.05698 -1.43152      NA  0.859434 -0.46135  0.21240 -0.08201  0.353768 -0.978242 -1.1692