Предположим, у вас есть два набора данных, x
и y
:Объединение dataframes колоннами, где существуют некоторые столбцы в обоих набора данных, но некоторые не
x=matrix(c(1,2,55,3,2,1,0,NA,NA,3,NA,333,NA,9,NA),5,3)
colnames(x)=c(1133131,12442141,20100063)
rownames(x)=c(1,2,3,4,5)
y=matrix(c(8,1,3,41,131,NA,4141,NA,124,NA,213,NA,128,NA,2,NA,1241,2),3,6)
colnames(y)=c(1133131,2422342,555555,33323242,20100063,23325600009)
rownames(y)=c(6,7,8)
Я хочу, чтобы объединить их так, что все столбцы присутствуют в конечном наборе данных , и данные заполняются там, где они существуют, и NA
, где это не так. Поэтому, если он отсутствует в другом наборе данных, я хочу, чтобы все его значения были NA
для этой части.
Поэтому в основном я хочу, чтобы конечный результат будет:
merged: upc
days 1133131, 12442141, 2422342, 555555, 33323242, 20100063, 23325600009
1 1 1 NA
2 2 0 NA
3 55 NA NA
4 3 NA NA ...etc
5 2 3 NA
6 8 NA 41
7 1 NA 131
8 3 NA NA
Сначала решите, хотите ли вы объединить данные (например, в заголовке) или матрицах (из примера). – zero323
Имена ростов различаются в 'x' и' y'; если это всегда произойдет в ваших наборах данных, решение будет проще, и на самом деле, возможно, лучше назвать «rbind» в R-lingo, а не «слиянием». Можете ли вы прояснить, будут ли эти розовые имена всегда отличаться? – Aaron
Да, они всегда будут отличаться, но они будут иметь разную ширину, поэтому rbind (x, y) не будет обрабатывать таблицу. – robertevansanders