कैसे एक डेटा बचाने के लिए। R में?


137

मैंने R में एक data.frame बनाया है जो बहुत बड़ा नहीं है, लेकिन इसे बनाने में काफी समय लगता है। मैं इसे एक फ़ाइल के रूप में सहेजना चाहूंगा, जिसे मैं आर में फिर से खोल सकता हूं?

जवाबों:


176

इसके कई तरीके हैं। save()सटीक वस्तु को बचाने के लिए उपयोग करने का एक तरीका है । उदाहरण के लिए डेटा फ्रेम foo:

save(foo,file="data.Rda")

फिर इसे लोड करें:

load("data.Rda")

आप write.table()सादे पाठ में तालिका को बचाने के लिए, या dput()तालिका को पुन: उत्पन्न करने के लिए आर कोड प्राप्त करने के लिए उपयोग या ऐसा कुछ भी कर सकते हैं ।


2
वहाँ भी है dumpऔर बनाई गई फ़ाइलें source()-ed होगी , हालांकि help(dump)पृष्ठ कहता saveहै "सुरक्षित" है।
IRTFM

4
मैं हमेशा सादे पाठ में डेटा भंडारण के पसंद करते हैं, तो मैं पसंद करेंगे dump()से अधिक save()है, और write.table()अधिकdump()
साचा Epskamp

क्या मैं सही हूं कि लिखना संभव नहीं है। 0 के कॉलम और 1 को एक कारक के रूप में सेट करने जैसी चीजों को संरक्षित नहीं किया जाएगा, लेकिन यह save()/ load()होगा? यदि हां, तो यह भी ध्यान में रखना है। मेरे पास आमतौर पर कुछ .csv फ़ाइलों को संसाधित करने का एक खंड होता है और एक बार जब मैं उन्हें पसंद करता हूं, जहां मैं उन्हें पसंद करता हूं, तो मैं उन्हें सहेजना पसंद करता हूं, इसलिए मुझे अपनी परियोजना को फिर से देखने के लिए हर बार उस कोड को फिर से चलाना नहीं पड़ता है। इसलिए, उस कार्य / संरचना को ट्विक को संरक्षित करना विचार करना महत्वपूर्ण है।
हेंडी

4
हाँ। dump()संरचना को भी बचाता है। इसके बारे write.tableमें अच्छी बात यह है कि यह एक तरह से टेबल लिखता है जिसमें कई सॉफ्टवेयर आयात कर सकते हैं।
सच्चा एप्सकांप

2
यह केवल डेटाफ्रेम के बजाय अधिक बचत करता है। saveRDSअपने नाम के बिना डेटाफ़्रेम को बचाने के लिए देखें (dhendrickson का उस पर एक उत्तर है)।
पैट्रिक टीटी

91

यदि आप केवल एक ऑब्जेक्ट (आपके डेटा फ़्रेम) को सहेज रहे हैं, तो आप भी उपयोग कर सकते हैं saveRDS
बचाना:

saveRDS(foo, file="data.Rda")

तो इसके साथ पढ़ें:

bar <- readRDS(file="data.Rda")

के बीच का अंतर saveRDSऔर saveहै कि पूर्व में केवल एक ही वस्तु में बचाया जा सकता है और ऑब्जेक्ट का नाम आप इसे लोड करने के बाद ही होना करने के लिए मजबूर नहीं है।


1

मान लें कि आपके पास एक डेटा फ़्रेम है, जिसे आपने "Data_output" नाम दिया है, आप बस निम्नलिखित सिंटैक्स का उपयोग करके इसे उसी निर्देशिका में निर्यात कर सकते हैं।

लिखना। एससीवी (डेटा_आउट, "आउटपुट। एससीवी", पंक्ति.नाम = एफ, उद्धरण = एफ)

इसका श्रेय पीटर और इल्जा, यूएमसीजी, नीदरलैंड को जाता है

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.