प्रश्न के रूप में, मैंने पाया कि मैं स्क्लाइट शैल में .import
का उपयोग कर सकता हूं, लेकिन ऐसा लगता है कि यह आर पर्यावरण में कोई सुझाव नहीं दे रहा है, कोई सुझाव?आरएसक्लाइट का उपयोग कर एसक्लाइट में सीएसवी कैसे आयात करें?
उत्तर
आप sqldf
पैकेज में read.csv.sql
का उपयोग कर सकते हैं। यह पढ़ने के लिए कोड की केवल एक पंक्ति है। मान लें कि आप एक नया डेटाबेस, testingdb बनाना चाहते हैं, और उसके बाद पढ़ने के लिए इसे में एक फ़ाइल इस प्रयास करें:
# create a test file
write.table(iris, "iris.csv", sep = ",", quote = FALSE, row.names = FALSE)
# create an empty database.
# can skip this step if database already exists.
sqldf("attach testingdb as new")
# or: cat(file = "testingdb")
# read into table called iris in the testingdb sqlite database
library(sqldf)
read.csv.sql("iris.csv", sql = "create table main.iris as select * from file",
dbname = "testingdb")
# look at first three lines
sqldf("select * from main.iris limit 3", dbname = "testingdb")
ऊपर sqldf का उपयोग करता है जो RSQLite उपयोग करता है। आप सीधे RSQLite का उपयोग भी कर सकते हैं। RSQLite में ?dbWriteTable
देखें। ध्यान दें कि लाइन एंडिंग के साथ समस्याएं हो सकती हैं यदि आप सीधे dbWriteTable
के साथ ऐसा करते हैं कि sqldf
स्वचालित रूप से (आमतौर पर) संभाल लेंगे।
आपका इरादा तुरंत डेटाबेस में इसे पढ़ने के बाद आर में फ़ाइल को पढ़ने के लिए गया था और तुम सच में उस के बाद डेटाबेस की जरूरत नहीं है, तो देखें:
http://code.google.com/p/sqldf/#Example_13._read.csv.sql_and_read.csv2.sql
मुझे लगता है कि ऐसा करने के लिए sqldf पैकेज के साथ करते हैं: Quickly reading very large tables as dataframes in R
ध्यान रखें कि ऊपर के उदाहरण में मैं एक अस्थायी SQLite db में सीएसवी पढ़ें। आपको स्पष्ट रूप से उस बिट को बदलने की आवश्यकता होगी।
- 1. निर्यात एसक्लाइट सीएसवी
- 2. एसक्लाइट डेटाबेस में आयात करें .sql फ़ाइल
- 3. सीएसवी आयात को तेज करें
- 4. सीएसवी एमआईएम-प्रकार का उपयोग कैसे करें?
- 5. कोडिग्निटर आरईएसटी सीएसवी आयात mysql
- 6. MySQL वर्कबेंच में एक सीएसवी फ़ाइल कैसे आयात करें?
- 7. सीएसवी फ़ाइल आयात .Net
- 8. जावा - आयात सीएसवी ArrayList को
- 9. अपने स्वयं के एसक्लाइट डेटाबेस का उपयोग कैसे करें?
- 10. mysql डेटाबेस में बड़े सीएसवी आयात कर रहा है
- 11. एक्सेल में वेब सेवा से सीएसवी डेटा आयात करें
- 12. अनसुलझा आयात सीएसवी पायदेव ग्रहण
- 13. आयात सीएसवी फ़ाइल/एक्सेल एसक्यूएल डेटाबेस asp.net
- 14. एक MySQL सीएसवी निर्यात से PostgreSQL सीएसवी आयात?
- 15. सीएसवी उद्धरण त्रुटि आयात करना मुझे पागल कर रहा है
- 16. एसक्लाइट
- 17. PHP का उपयोग कर एक एसक्लाइट डेटाबेस को कैसे कनेक्ट करें?
- 18. एसक्लाइट
- 19. MySQL आयात CSV डेटा - कुछ सीएसवी कॉलम को अनदेखा करें
- 20. सीएसवी
- 21. सीएसवी आयात; सभी मान एक पंक्ति है
- 22. एसक्लाइट
- 23. एक वर्कबुक में एकाधिक वर्कशीट में एकाधिक सीएसवी आयात करना
- 24. कोर डेटा प्रबंधित एसक्लाइट डीबी
- 25. पूर्ण आयात का उपयोग कब करें
- 26. बाहरी एफ़टीपी साइट से आयात सीएसवी फ़ाइल
- 27. सीएसवी
- 28. लोड डेटा INFILE का उपयोग कर MySQL तालिका में आयात करते समय CSV फ़ाइल में कॉलम को कैसे छोड़ें?
- 29. एसएसआईएस का उपयोग कर डेटाबेस में एक निश्चित चौड़ाई फ्लैट फ़ाइल कैसे आयात करें?
- 30. आदेश पंक्ति का उपयोग कर ग्रहण में एकाधिक परियोजनाओं को कैसे आयात करें?
sqldf शानदार है! इस उत्तर को भी देखें http://stackoverflow.com/questions/4350131/unix-importing-large-csv-into-sqlite – Jay
लेकिन यह सत्र के अंत में फ़ाइल को हटा देता है। इसे रखने का कोई तरीका? – xiaodai
@xiaodai, sqldf उपरोक्त कोड में डेटाबेस या इनपुट फ़ाइल को नहीं हटाता है। sqldf यह बनाता है कि किसी भी डेटाबेस को हटा देता है लेकिन sqldf कभी भी इनपुट फ़ाइल को हटा देता है और कभी भी डेटाबेस को हटा देता है जो इसे नहीं बनाता है। इस मामले में डेटाबेस sqldf द्वारा स्वयं नहीं बनाया गया है (यह बैकएंड SQLite द्वारा 'संलग्न' कथन के माध्यम से बनाया गया है - फ्रंट एंड sqldf द्वारा नहीं) तो sqldf इसे हटा नहीं देगा। ध्यान दें कि sqldf डेटा फ्रेम के विज्ञापन में हेरफेर के लिए है, लेकिन यदि आप बुद्धिमान डेटाबेस को सौदा करते हैं तो आप सीधे RSQLite, RH2 या अन्य डेटाबेस इंटरफ़ेस पैकेज का उपयोग करना चाहेंगे। –