मैं एक आर ट्यूटोरियल के माध्यम से काम कर रहा हूं और मुझे संदेह है कि मुझे इन कार्यों में से एक का उपयोग करना है, लेकिन मुझे यकीन नहीं है कि (हाँ मैंने उनको शोध किया लेकिन जब तक मैं और नहीं बन जाता आर शब्दावली में धाराप्रवाह वे काफी उलझन में हैं)।सीएसवी फाइलों की एक श्रृंखला की पंक्तियों की संख्या
मेरी कार्य निर्देशिका में एक फ़ोल्डर "specdata" है। Specdata में 001.csv - 300.csv नामक सैकड़ों सीएसवी फाइलें हैं।
जिस फ़ंक्शन पर मैं काम कर रहा हूं उसे सीएसवी फ़ाइलों की इनपुट संख्या के लिए पंक्तियों की कुल संख्या की गणना करनी चाहिए। तो अगर समारोह में तर्क 1:10
है और उन फ़ाइलों में से प्रत्येक दस पंक्तियां हैं, लौट 100
यहाँ मैं अब तक है:
complete <- function(directory,id = 1:332) {
setpath <- paste("/Users/gcameron/Desktop",directory,sep="/")
setwd(setpath)
csvfile <- sprintf("%03d.csv", id)
file <- read.csv(csvfile)
nrow(file)
}
यह काम करता है जब आईडी तर्क एक संख्या है, का कहना है कि
Error in file(file, "rt") : invalid 'description' argument
इनपुट किए गए आईडी पैरामीटर से पंक्तियों की कुल संख्या गिनती करने के लिए सक्षम होने के लिए मुझे क्या करना चाहिए: 17. लेकिन, अगर मैं इनपुट कहना 10:50 एक तर्क के रूप में, मैं एक त्रुटि प्राप्त?
nrows <- sapply(csvfile, function(f) nrow(read.csv(f)))
sum(nrows)
उदाहरण के लिए, यहाँ complete
समारोह के पुनर्लेखन है: ताकि आप फ़ाइलों पर पाश की जरूरत
धन्यवाद। यदि आपके पास एक सेकेंड है तो बहुत कम क्यू का पालन करें। 1) मैं इस लाइन को कहां रखूं? समारोह के भीतर "पूर्ण" या उसके बाद? 2) यदि इसके बाद, क्या मुझे ऑब्जेक्ट csvfile को दायरे के लिए फिर से घोषित करने की आवश्यकता नहीं है? 3) आपका पैरामीटर "फ़ंक्शन (एफ)" - क्या यह उस स्थान का नाम है जिसे मैंने अपने स्थान पर बनाया है? यानी nrows <- sapply (csvfile, पूर्ण (f # यहां क्या जाता है?) nrow (read.csv (f) जैसा कि आप इसमें कोई संदेह नहीं कर सकते कि मैं इस –
के साथ थोड़ा संघर्ष कर रहा हूं, मैंने अपना जवाब संपादित कर लिया है। यह भी ध्यान दें कि आपका मूल कार्य कभी भी काम करने वाली निर्देशिका को रीसेट नहीं करता है, यह गलत है। –
धन्यवाद एक टन मैं इसके लिए वास्तव में आभारी हूं। यह काम कर चुका है। अब इसे देखकर मैं इसे समझ सकता हूं। –