क्या सीएसवी कॉलम को सीधे श्रेणीबद्ध डेटा के रूप में पढ़ना संभव है?


10

मुझे एक सीएसवी में आने वाले मेडिकल सर्वे (100+ कोडेड कॉलम के साथ) के डेटा का विश्लेषण करने की आवश्यकता है। मैं कुछ प्रारंभिक विश्लेषण के लिए खड़खड़ का उपयोग करूंगा लेकिन पर्दे के पीछे यह अभी भी आर है।

यदि मैं पढ़ता हूं । फ़ाइल () फ़ाइल, संख्यात्मक कोड वाले कॉलम को संख्यात्मक डेटा के रूप में माना जाता है। मुझे पता है कि मैं उनके साथ कारक () से श्रेणीबद्ध कॉलम बना सकता हूं लेकिन इसे 100+ कॉलम के लिए करना एक दर्द है।

मुझे आशा है कि कॉलम को सीधे कारकों के रूप में आयात करने के लिए आर को बताने का एक बेहतर तरीका है। या कम से कम बाद में उन्हें बदलने के लिए।

धन्यवाद!


3
हम यहां R प्रश्न लेने के लिए खुश हैं। देखें meta.stats.stackexchange.com/questions/252/...
रोब Hyndman

जवाबों:


15

आप colClassesअपने डेटा कॉलम की कक्षाओं को निर्दिष्ट करने के लिए तर्क का उपयोग कर सकते हैं। उदाहरण के लिए:

data <- read.csv('foo.csv', colClasses=c('numeric', 'factor', 'factor'))

पहले कॉलम को संख्यात्मक असाइन करेंगे, दूसरे और तीसरे को कारक। चूंकि आपके पास बहुत सारे कॉलम हैं, इसलिए एक शॉर्टकट हो सकता है:

data <- read.csv('foo.csv', colClasses=c('numeric', rep('factor', 37), 'character'))

या कुछ इस तरह की भिन्नता (यानी अगले कॉलम के लिए संख्यात्मक को असाइन करें, अगले 37 कॉलम के लिए कारक, फिर पिछले एक के लिए चरित्र)।


यह भी उपयोगी हो सकता है, यदि आप चर नाम से कक्षाएं निर्दिष्ट करना चाहते हैं (उदाहरण के लिए, केवल एक चर को कक्षा देने के लिए): stackoverflow.com/a/8185739/1169233
वाल्डिर लियोनसियो

3

या डेटा पढ़ने के बाद ही इसे करें

dat <- read.csv("kdfjdkf")
apply(dat, 2, factor)

हालांकि इस प्रकार का क्यू स्टैक ओवरफ्लो के लिए अधिक उपयुक्त है

संपादित करें : नीचे देखें।


1
Meta.stats.stackexchange.com/questions/252/… देखें वर्तमान सहमति यह है कि यह एक उपयुक्त प्रश्न है, यदि आप मेटा में झंकार से असहमत हैं, तो नए प्रश्न पूछने वाले को पीड़ा न दें।
russellpierce

1
ठीक है, लेकिन आपके पास शुद्ध आर प्रश्न (अब के लिए कम से कम) के लिए प्रतिक्रियाएं प्राप्त करने के लिए संभवतः एक बड़ा दर्शक होगा - इसलिए, "शायद"। "पीड़ा" एक मजबूत शब्द है एह? :)
apeescape

1
निश्चित, पीड़ा थोड़ी मजबूत है; मैं इस बारे में माफी चाहता हूँ। मैं बार-बार अपराधी उपयोगकर्ताओं (जिनमें से आप एक नहीं हैं) से निराश हूं, जो मेटा पर कोई टिप्पणी किए बिना स्टैकऑवरफ्लो में प्रश्न पूछने वालों को पुनर्निर्देशित करने में लगे रहते हैं (जहां सर्वसम्मति स्पष्ट प्रतीत होती है)।
russellpierce

यह जहां 0-गद्देदार संख्या, संख्या का एक मिश्रण और लापता मूल्यों, साथ ही स्तंभ होने या का केवल मान समस्याओं को जन्म दे सकता है 'T'और 'F'(तार्किक में परिवर्तित हो जाता)।
मैक्स कैंडोसिया
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.