2017-06-21 57 views
0

Derzeit versuche ich zwei Tabellen in R zusammen zu verschmelzen. Beide haben unterschiedliche Inhalte und keine ID, nur die Spalten haben die Nummern R.Zusammenführen von zwei Tabellen in R

Mein Problem ist jetzt, dass ich die Spalten und ihre Werte nicht von Tabelle 2 zu Tabelle 1 hinzufügen kann. Ich möchte auch erwähnen, dass beide die gleiche Anzahl von Zeilen haben, was bedeutet, dass Tabelle 1 hat 1000 Zeilen und und Tabelle 2 auch. Ich kann auch kein ID-Feld hinzufügen, da es sonst nicht möglich ist, weitere Schritte meines Codes auszuführen.

Grundsätzlich sehen meine Tabellen wie folgt aus:

Example

Ich würde wirklich zu schätzen es, wenn mir jemand helfen kann.

+2

Ein Beispiel wäre hilfreich zu reproduzieren. Es sieht so aus, dass 'cbind' den Job erledigt –

+0

benutze' cbind (table1, table2) ' –

Antwort

1

Die einfachste (und vielleicht auch blinde) Methode ist die Verwendung von cbind, um die beiden Tabellen zu kombinieren, solange die Anzahl der Zeilen in jeder Tabelle gleich ist.

x<-tribble(~Value1, ~Value2, ~Value3, 

a,b,c, 

aa,bb,cc) 

y<-tribble(~Value4, ~Value5, ~Value6, 

d,e,f, 

dd,ee,ff) 

cbind(x,y) 

Ausgang wird

 Value 1  Value 2  Value 3 Value 4 Value 5 Value 6 

1   a   b   c   d   e   f 

2   aa  bb   cc  dd   ee   ff 

Da die beiden Tabellen sind (ich nehme an) sich gegenseitig ausschließen, gibt es keine Möglichkeit gibt, sie sinnvoll zu verbinden, wenn Sie mit nicht Beziehungen haben zu arbeiten. Wenn Sie versuchen, sie in R zusammenzuführen, werden die beiden Tabellen zusammengeführt und ein Datenrahmen zurückgegeben, der alle unterschiedlichen Kombinationen enthält. Das heißt, wenn Sie jeweils 1000 Zeilen haben, erhalten Sie möglicherweise einen 1000 * 1000 Datenrahmen.

+0

Danke ich habe deinen Vorschlag ausprobiert und es hat funktioniert. Nein, ich habe alle meine Werte in einer Tabelle zusammengefasst. – JCra

1

Dies wird Ihr Beispiel

Value1=c("a","aa") 
Value2=c("b","bb") 
Value3=c("c","cc") 
Value4=c("d","dd") 
Value5=c("e","ee") 
Value6=c("f","ff") 

table1=data.frame(Value1,Value2,Value3) 
table2=data.frame(Value4,Value5,Value6) 
Result=cbind(table1,table2) 
Verwandte Themen