2012-06-27 7 views
6

एक नया डेटा सेट एक्सप्लोर करना: कई (सभी) चरों को देखने के लिए सबसे आसान, सबसे तेज़ तरीका क्या है?मैं आर में न्यूनतम प्रयास के साथ डेटा सेट में सभी चर के लिए हिस्टोग्राम कैसे बना सकता हूं?

आदर्श रूप से, आउटपुट एक दूसरे के बगल में हिस्टोग्राम को न्यूनतम अव्यवस्था और अधिकतम जानकारी के साथ दिखाता है। बड़े और अलग-अलग डेटा सेटों से निपटने के लिए इस सवाल की कुंजी लचीलापन और स्थिरता है। मैं RStudio का उपयोग कर रहा हूं और आमतौर पर बड़े और गन्दा सर्वेक्षण डेटा से निपटता हूं।

एक उदाहरण जो Hmisc के बॉक्स से बाहर आता है और यहां काफी अच्छी तरह से काम करता है:

library(ggplot2) 
str(mpg) 

library(Hmisc) 
hist.data.frame(mpg) 

दुर्भाग्य से, कहीं और मैं डेटा lables (plot.new करने में त्रुटि() के साथ समस्याओं में चलाने: आंकड़ा मार्जिन बहुत बड़ा)। यह mpg से बड़े डेटा सेट के लिए भी दुर्घटनाग्रस्त हो गया और मुझे पता नहीं लगा कि कताई को नियंत्रित करने के तरीके को कैसे पता चला है। इसके अलावा, मैं ggplot2 में एक लचीला समाधान पसंद करूंगा। ध्यान दें कि मैंने अभी आर सीखना शुरू कर दिया है और वाणिज्यिक सॉफ्टवेयर द्वारा प्रदान किए गए आरामदायक समाधानों में उपयोग किया जाता हूं। इस विषय पर

अधिक सवाल:

R histogram - too many variables

...?

+1

डेटा सेट में प्रत्येक चर के लिए ग्राफ बनाना एक छोटे से डेटा सेट के लिए ठीक है, लेकिन यदि आपके पास 3000 चर हैं तो बस एक बहुत ही विचार है। उस मामले में सही जवाब है "ऐसा मत करो"। – joran

+0

बेशक नहीं; यह सिर्फ "गन्दा" के लिए एक उदाहरण था। – Rico

+1

मैं यहां आने वाले प्रयासों की सराहना करता हूं, लेकिन आपका प्रश्न बस एक ठोस, विशिष्ट प्रोग्रामिंग समस्या का वर्णन नहीं कर रहा है। इसके बजाए, यह कुछ ऐसा लगता है जो स्पष्ट उत्तर के बजाय विभिन्न सिफारिशों के साथ जुआ जवाबों का कारण बन जाएगा। दरअसल, जब मैं आपका जवाब पढ़ता हूं तो मैं आपके मानदंडों के मुकाबले ज्यादा उलझन में हूं। – joran

उत्तर

8

वहाँ मोटे तौर पर तीन दृष्टिकोण हो सकता है:

    चर या इसी तरह के मैक्रो निर्माणों से अधिक लूपिंग ऐसे hist.data.frame()
  1. के रूप में संकुल से
  2. आदेश
  3. चर स्टैकिंग और का उपयोग कर पहलुओं

संकुल

अन्य आदेशों उपलब्ध मददगार हो सकता है कि:

library(plyr) 
library(psych) 
multi.hist(mpg) #error, not numeric 
multi.hist(mpg[,sapply(mpg, is.numeric)]) 

या शायद plotrix से multhist, जो मैं छानबीन नहीं की है। उनमें से दोनों उस लचीलेपन की पेशकश नहीं करते जो मैं ढूंढ रहा था।

लूप्स

एक अनुसंधान शुरुआत हर किसी के रूप में मुझे छोरों से दूर रहने की सलाह दी। तो मैंने किया, लेकिन शायद यह एक कोशिश के लायक है। किसी भी सुझाव का बहुत स्वागत है। शायद आप ग्राफ को एक फ़ाइल में गठबंधन करने के तरीके पर टिप्पणी कर सकते हैं।

स्टैकिंग

मेरा पहला संदेह है कि स्टैकिंग चर हाथ से मिल सकता है था। हालांकि, यह चर के उचित सेट के लिए सबसे अच्छी रणनीति हो सकती है।

एक उदाहरण मैं melt फ़ंक्शन का उपयोग करता हूं।

library(reshape2) 
mpgid <- mutate(mpg, id=as.numeric(rownames(mpg))) 
mpgstack <- melt(mpgid, id="id") 
pp <- qplot(value, data=mpgstack) + facet_wrap(~variable, scales="free") 
# pp + stat_bin(geom="text", aes(label=..count.., vjust=-1)) 
ggsave("mpg-histograms.pdf", pp, scale=2) 

(आप देख सकते हैं मैं अधिक जानकारी के घनत्व के लिए सलाखों पर मूल्य लेबल डालने की कोशिश की, लेकिन वह इतनी अच्छी तरह से जाना नहीं था। X- अक्ष पर लेबल भी आदर्श से कम हैं।)

कोई समाधान यहां सही नहीं है और एक-आकार-फिट नहीं होगा-सभी आदेश। लेकिन शायद हम एक नए डेटा सेट की खोज आसानी से प्राप्त कर सकते हैं।

संबंधित मुद्दे

 संबंधित मुद्दे