r - Assign vector in indexing another vector -


मेरी समस्या को स्पष्ट करने के लिए यहां एक छोटा कोड है:

  x  

अब, जिस क्रम में मैं अगले दो आदेशों को जारी करता हूं मुझे अलग-अलग उपसमुदाय मिलते हैं:

  • x पहले, y दूसरा:

      x [(x == 2) & amp; (वाई! = "ए") & amp; (Z == 4)] & lt; - "a" # & gt; X # [1] "1" "एक" "3" "4" "5" "6" "7" "8" "9" "10" वाई [(एक्स == 2) & amp; (वाई! = "ए") & amp; (Z == 4)] & lt; - "a" # & gt; Y # [1] "a" "b" "a" "b" "a" "b" "a" "b" "a" "b"  
  • y पहले, x दूसरा:

      y [(x == 2) & amp; (वाई! = "ए") & amp; (Z == 4)] & lt; - "a" # & gt; Y # [1] "ए" "ए" "बी" "ए" बी "" ए "बी" "ए" बी "x [(x == 2) & amp; (वाई! = "ए") & amp; (Z == 4)] & lt; - "a" # & gt; X # [1] "1" "2" "3" "4" "5" "6" "7" "8" "9" "10"  
  • दूसरा सदिश का काम पिछले वेक्टर में किए गए असाइनमेंट पर निर्भर करता है। इसलिए, द्वितीय असाइनमेंट में मुझे यह सुनिश्चित करने की आवश्यकता है कि मेरे पास दूसरे सूचकांक के लिए अभी भी संबंधित सूचकांक उपलब्ध हैं। मेरा पहला विचार यह है:

      x [इंड एंड एलटी; - ((x == 2) & amp; (y! = "A") & amp; (z == 4))] & lt; - "a" y [इंडस्ट्रीज़]  

    मैं ind के असाइनमेंट को करने के लिए एक अलग कॉल से बचना चाहता हूं वेक्टर को दिया गया है कि मैं बहुत कुछ कर सकता हूं। क्या यह अभी भी आर में अच्छा कोडिंग माना जाता है या क्या इसके बारे में सोचा कोई भी गलत व्यवहार नहीं हो सकता है?

    आपका समाधान ठीक लगता है हालांकि, मैं अब भी आपके कोड को कुछ बुरा व्यवहार के रूप में मानता हूं। अपनी पहली बुलेट पर विचार करें:

      x [(x == 2) & amp; (वाई! = "ए") & amp; (जेड == 4)] & lt; - "ए" वाई [(एक्स == 2) & amp; (वाई! = "ए") & amp; (Z == 4)] & lt; - "a"  

    पंक्ति 1 पर, आपका संख्यात्मक चर x एक में कनवर्ट हो जाता है चरित्र जब आप "a" को TRUE सूचकांक के लिए असाइन करते हैं या शायद नहीं, यदि कोई सूचकांक TRUE नहीं होता है इसलिए आपके आउटपुट का प्रकार वास्तव में स्पष्ट नहीं है यह कुछ हद तक खराब अभ्यास है और सभी प्रकार की समस्याओं या नीचे की ओर बढ़ सकता है। आप प्रकार के अंदर रहना चाहिए।

    इसका यह भी अर्थ है कि उपरोक्त में आपकी दूसरी पंक्ति में x == 2 कुछ स्पष्ट नहीं है, हालांकि आर ठीक से तुलना की व्याख्या करता है फिर भी, यह एक अधिक विस्तृत उदाहरण में समस्याएं पैदा कर सकता है। लेकिन हो सकता है कि आपके पास अपने आवेदन में इन प्रकार के मुद्दे नहीं हैं।


Comments