2010-08-06 11 views
16

क्या कोई कारण है कि आर मुझे मेरे डेटाफ्रेम के कॉलम नाम के रूप में नंबर देने की अनुमति नहीं देगी?डेटा संख्याओं के कॉलम नामों के रूप में आर संख्या

यह भी देखा कि अगर मैं ऐसा data.frame(XX) यह सब कॉलम हेडर मोर्चे पर नंबर हैं कि करने के लिए एक X कहते हैं।

उत्तर

17

हां, क्योंकि आर वस्तुओं के नामों को संख्याओं से शुरू करने की अनुमति नहीं देगा। यदि आप डेटा.फ्रेम के साथ संलग्न() को कॉल करना चाहते थे, तो इससे कुछ समस्याएं उत्पन्न हो जाएंगी।

आप read.table फ़ंक्शन में (उदाहरण के लिए) check.names पैरामीटर देखेंगे जो आपके द्वारा वर्णित करने के लिए make.names() फ़ंक्शन का उपयोग करता है।

+0

हाँ, मैं डेटा फ्रेम नामकरण के संबंध में के रूप में ज्यादा कल की व्याख्या की। –

+0

क्या इसके लिए कोई कारण है? या यह ऐसा कुछ है जो वास्तव में कोई नहीं मानता है? यह * नहीं है * एक्स को किसी भी संख्या के सामने एक्स रखने के लिए एक बड़ा सौदा है, मैं हेडर बनना चाहता हूं, लेकिन मैं सोच रहा था कि आर मुझे क्यों नहीं जाने देगा। –

+2

आप * अभी भी * समझ में नहीं आता है। शेन के जवाब को दोबारा पढ़ें, 'संलग्न करें') के बारे में सोचें और यह समझें कि इन्हें नाम बदलने के लिए क्यों हैं। जैसा कि मरेक दिखाता है, आप * ऐसा कर सकते हैं लेकिन इसका मतलब यह नहीं है कि आपको * चाहिए *। –

23

वर्क्स के लिए मुझे

data.frame(`1`=rnorm(3), `2`=head(letters,3), check.names=FALSE) 
#  1 2 
# 1 0.5019 a 
# 2 1.1148 b 
# 3 0.4787 c 
+0

धन्यवाद। मैं संख्याओं के बारे में समझ गया, लेकिन ऐसा लगता है कि कुछ यूनिकोड टेक्स्ट अस्वीकृत है। जब मैं सिर्फ प्रारूपण के लिए फ्रेम का उपयोग कर रहा हूं, तो आपका सुझाव आसान हो जाता है। –

संबंधित मुद्दे

 संबंधित मुद्दे