अगर मैं इस तरह के रूप में दो डेटा फ्रेम, है:"पंक्ति। नाम" कॉलम को जोड़ने के बिना पंक्ति नाम से डेटाफ्रेम कैसे विलय करता है?
df1 = data.frame(x=1:3,y=1:3,row.names=c('r1','r2','r3'))
df2 = data.frame(z=5:7,row.names=c('r5','r6','r7'))
(
R> df1
x y
r1 1 1
r2 2 2
r3 3 3
R> df2
z
r5 5
r6 6
r7 7
), मैं उन्हें, पंक्ति नामों से विलय करने के लिए सब कुछ रखने चाहते हैं (इसलिए एक बाहरी में शामिल होने, या सभी = टी)। यह करता है:
merged.df <- merge(df1,df2,all=T,by='row.names')
R> merged.df
Row.names x y z
1 r1 1 1 NA
2 r2 2 2 NA
3 r3 3 3 NA
4 r5 NA NA 5
5 r6 NA NA 6
6 r7 NA NA 7
लेकिन मैं आउटपुट पंक्ति नाम आउटपुट डेटाफ्रेम (merged.df) में पंक्ति नाम होना चाहता हूं।
मैं कर सकते हैं:
rownames(merged.df) <- merged.df[[1]]
merged.df <- merged.df[-1]
जो काम करता है, लेकिन असजीला और कड़ी याद करने लगता है। किसी को क्लीनर तरीके से पता है?
आपका उदाहरण डेटा.फ्रेम में आम तौर पर कोई पंक्ति नहीं है, 'मर्ज' के लिए काफी असामान्य उदाहरण है, क्या जानबूझकर था? – flodel
जानबूझकर नहीं, इसके बारे में खेद है। – user116293