Sunday, 15 September 2013

reshape2 - Reshape with id-variable in column names R -


इस सवाल का पहले से ही एक उत्तर है: < / P>

  • 5 जवाब

मैंने आर के साथ काम किया है अभी कुछ समय के लिए, लेकिन नयी आकृति या reshape2 संकुल का बहुत कम उपयोग किया है। मैं वर्तमान में विस्तृत सेट से डेटा सेट को नयी आकृति प्रदान करने की कोशिश कर रहा हूं जहां सूचक चर चर नामों का हिस्सा हैं I यह मेरे डेटा फ्रेम की वर्तमान संरचना है:

  mydf & lt; - data.frame (जिले = सी (1: 2), v.mandate = c (1, 3), s जनादेश = सी (2, 4), v.perc = c (.4, .3), s.perc = c (.5, .6)) gt; Mydf जिला v.mandate s.mandate v.perc s.perc 1 1 1 2 0.4 0.5 2 2 3 4 0.3 0.6  

मैं इसे लंबे प्रारूप में नयी आकृति देना चाहता हूं और "v । " और "एस।" के रूप में आईडी चर (वास्तविक डेटा में सेट सूची लंबी है)। नीचे दिए गए उदाहरण देखें।

  mydf2 & lt; - डेटा.फ्रेम (जिले = सी (1, 1, 2, 2), पार्टी = c ("v", "s", "v" , "S"), जनादेश = सी (1, 2, 3, 4), perc = c (.4, .5, .3, .6)) gt; Mydf2 जिला पार्टी जनादेश पीआरसी 1 1 वी 1 0.4 2 1 एस 2 0.5 3 2 वी 3 0.3 4 2 एस 4 0.6  

मैंने दोनों नयी आकृति और पिघल कार्यों का उपयोग करने की कोशिश की है, लेकिन मैं वैरिएबल नामों से सूचक चर को निकालने में प्रतीत नहीं होता इसके बजाय, डेटा सेट को लंबे प्रारूप में फिर से बदल दिया गया है, लेकिन आईडी चर के रूप में पूर्ण चर नामों के साथ। नीचे उदाहरण देखें।

  & gt; पिघल (mydf, id.vars = 1) जिला चर मान 1 1 v.mandate 1.0 2 2 v.mandate 3.0 3 1 s.mandate 2.0 4 2 s.mandate 4.0 5 1 v.perc 0.4 6 2 v.perc 0.3 7 1 s.perc 0.5 8 2 s.perc 0.6  

यह एक छोटी सी समस्या हो सकती है, लेकिन मैं एक समाधान ऑन लाइन खोज नहीं पाई है।

किसी भी मदद की सराहना!

मैं अक्षम हो सकता है, लेकिन ऐसा लगता है कि आपने अपना नाम चरम परिक्रमा क्या हो सकता है (जैसे v.mandate के बजाय mandate.v )। मैंने उनके नामकरण को उलट कर दिया और इसे काम करने के लिए मिल गया:

  mydf & lt; - data.frame (जिला = सी (1: 2), mandate.v = c (1, 3), Mandate.s = c (2, 4), perc.v = c (.4, .3), perc.s = c (.5, .6)) पुस्तकालय ("reshape2") mydf2 = reshape (mydf, अलग = 2: 5, #variables 2: 5 भिन्नता = "लंबे", # कार्यकाल लंबे समयवार = "पार्टी", # समूहिंग चर idvar = "district", #selecting sep = "।") # डॉट्स द्वारा सिलेटेड < / Code> 

यह देता है:

  & gt; Mydf2 जिला पार्टी जनादेश perc 1.v 1 v 1 0.4 2.v 2 v 3 0.3 1s 1 s 2 0.5 2.s 2 s 4 0.6  

आपको किसी प्रकार की आवश्यकता हो सकती है पूरे डेटाफ्रेम में नामों को पीछे करने का स्वचालित तरीका। मैंने मैन्युअल रूप से ऊपर किया क्योंकि केवल 4 चर थे यदि आपके पास 100 है, तो इसके लायक नहीं है।


No comments:

Post a Comment