मुझे दो अलग-अलग आकार डेटा फ्रेम मर्ज करने की आवश्यकता है। बड़ा एक (df1
) में कई बार दोहराए गए मान (licto
) के साथ एक कॉलम है, छोटे एक (df2
) में कॉलम licto
है, लेकिन इसके मान दोहराए नहीं जाते हैं। डीएफ 2 में एक आईडी कॉलम भी है। मुझे में आईडी के साथ df1
में एक नया कॉलम चाहिए, licto
में दोहराए गए मानों के अनुसार दोहराया गया है। नीचे दिया गया उदाहरण शायद इसे स्पष्ट बना देता है।विभिन्न आकार डेटा फ्रेम विलय और मान दोहराते हुए
df1<-data.frame(licfrom=c(15470,16307,17121,15350,16982,17182,20319,16727,16946,16262,16605,
16607,15924,15399,15404,16739,16839,16842,16899,16157,15399),
licto=c(17121,17121,17121,16982,16982,16982,16982,16946,16946,16262,16607,
16607,15924,16839,16839,16839,16839,16839,16839,16157,15399))
।
df2<-data.frame(licto=c(17121,16982,16946,16607,15924,16839,16157,15399),
fisherID=c(160,760,770,406,106,2196,17323,2441))
मेरे डेटा फ्रेम इस तरह दिखेगा:
df1 df2
licfrom licto licto fisherID
15470 17121 17121 160
16307 17121 16982 760
17121 17121 16946 770
15350 16982 16262 947
16982 16982 16607 406
17182 16982 15924 106
20319 16982 16839 2196
16727 16946 16157 17323
16946 16946 15399 2441
16262 16262
16605 16607
16607 16607
15924 15924
15399 16839
15404 16839
16739 16839
16839 16839
16842 16839
16899 16839
16157 16157
15399 15399
और मेरा अंतिम डेटा फ्रेम इस तरह होना चाहिए:
licfrom licto fisherID
15470 17121 160
16307 17121 160
17121 17121 160
15350 16982 760
16982 16982 760
17182 16982 760
20319 16982 760
16727 16946 770
16946 16946 770
16262 16262 947
16605 16607 406
16607 16607 406
15924 15924 106
15399 16839 2196
15404 16839 2196
16739 16839 2196
16839 16839 2196
16842 16839 2196
16899 16839 2196
16157 16157 17323
15399 15399 2441
किसी भी मदद की सराहना की हो जाएगा के रूप में मैं कई घंटे बिताए हैं मुझे जरूरत के रूप में विलय करने की कोशिश कर रहा है। मैंने merge
और %in%
का उपयोग सफलतापूर्वक नहीं किया है। धन्यवाद!
यह सरल से मैंने सोचा था की कोशिश करने के लिए, बस प्रकार तर्क यह काम किया जोड़ने चाहते हो सकता है। बहुत बहुत धन्यवाद। – Rafael