आर

2012-10-07 20 views
14

में read.table या read.csv का उपयोग करके "#" और स्पेस के साथ फ़ाइल नहीं पढ़ सकता है। मेरे पास एक फ़ाइल है जहां पहली पंक्ति हेडर है। शीर्षलेख में रिक्त स्थान और # प्रतीक हो सकते हैं (अन्य विशेष वर्ण भी हो सकते हैं)। मैं read.csv या read.table का उपयोग कर इस फाइल को पढ़ने के लिए कोशिश कर रहा हूँ, लेकिन यह मुझे त्रुटियों फेंक रखता है:आर

Chromosome# Chr chr Size UCSC NCBI36/hg18 NCBIBuild36 NCBIBuild37 
1 Chr1 chr1 247199719 247249719 247249719 249250621 
2 Chr2 chr2 242751149 242951149 242951149 243199373 

कमान:

undefined columns selected 

more columns than column names 

मेरे टैब-सीमांकित chromFile फ़ाइल की तरह दिखता है

chromosomes <- read.csv(chromFile, sep="\t",skip =0, header = TRUE, ) 

मैं पहले फ़ाइल को पढ़ने के लिए एक रास्ता ढूंढना चाहता हूं क्योंकि अंतरिक्ष को प्रतिस्थापित किए बिना या # किसी अन्य पठनीय प्रतीक के साथ।

उत्तर

25

प्रलेखन (?read.csv) से:

comment.char चरित्र: लंबाई एक एकल वर्ण या एक खाली स्ट्रिंग वाली की एक चरित्र वेक्टर। पूरी तरह से टिप्पणियों की व्याख्या को बंद करने के लिए "" प्रयोग करें।

डिफ़ॉल्ट comment.char = "#" है जो आपको परेशानी का कारण बन रहा है। प्रलेखन के बाद, आपको comment.char = "" का उपयोग करना चाहिए।

शीर्षलेख में रिक्त स्थान एक और मुद्दा है, जैसा कि mrdwab कृपया इंगित किया गया है, check.names = FALSE सेट करके संबोधित किया जा सकता है।

chromosomes <- read.csv(chromFile, sep = "\t", skip = 0, header = TRUE, 
         comment.char = "", check.names = FALSE) 
+0

'check.names = FALSE' में जोड़ें और फिर मुझे लगता है कि उत्तर वह होगा जो वे खोज रहे हैं। – A5C1D2H2I1M1N2O1R2T1

+0

यह धन्यवाद काम किया .. comment.char = "" और check.names = झूठी का संयोजन – user1631306