Saturday, 15 June 2013

Why with() in R is doing vector operation in one case and not in the other? -


इस सवाल का पहले से ही एक उत्तर है: < / P>

  • 3 जवाब

    मेरे पास निम्न तालिका है: <पूर्व> & gt; हेड (डेटालिस्ट [[5]]) X5CO X5CS X5CD X5CSD 1 24.8776 9 24.31233 26.84647 34.3316 2 24.74026 24.31233 26.84647 34.3316 3 24.45217 24.31233 26.84647 34.3316 10 24.87769 24.31233 26.15139 34.3316 11 24.74026 24.31233 26.15139 34.3316 12 24.45217 24.31233 26.15139 34.3316

    मुझे प्रत्येक पंक्ति का उपयोग करके चर मानों के रूप में निम्न अभिव्यक्ति को लागू करना होगा। तो मैं () फ़ंक्शन के साथ उपयोग कर रहा हूँ यह 2 नेस्टेड इफ़ेलिस के साथ अच्छी तरह से काम कर रहा है, लेकिन जब मैं एक तीसरी ifelse जोड़ता हूं तो यह अब और काम नहीं करता है। अपने आप से देखें:

      & gt; (सिर (डेथलिस्ट [[5]], {+ cCO = get (पेस्ट ("एक्स", 5, "सीओ", सेप = "")) + सीसीएस = मिल (पेस्ट ("एक्स", 5, " सीएसडीडी = प्राप्त (पेस्ट ("एक्स", 5, "सीएसडी", एसईपी), सीसीडी = प्राप्त करें (पेस्ट ("एक्स", 5, "सीडी", सेप = "")) + सीसीडी = = "")) + इफेल ((सीसीएस-सीसीओ)> 1, # 1 परिणाम # एफ़एलएसी (सीसीडी-सीसीओ)> 0, 2, # 2 + 5))) # डिफ़ॉल्ट [1] 2 2 2 2 2 2   

    केवल 2 नेस्टेड लूप के साथ परिणाम [1] 2 2 2 2 2 2 और यह वही है जो मैं चाहता हूं। हालांकि जब मैं एक तीसरी शर्त जोड़ता हूं तो यह अब और काम नहीं करता है:

      & gt; (सिर (डेथलिस्ट [[5]], {+ cCO = get (पेस्ट ("एक्स", 5, "सीओ", सेप = "")) + सीसीएस = मिल (पेस्ट ("एक्स", 5, " सीएसडीडी = प्राप्त (पेस्ट ("एक्स", 5, "सीएसडी", एसईपी), सीसीडी = प्राप्त करें (पेस्ट ("एक्स", 5, "सीडी", सेप = "")) + सीसीडी = = "")) + इफेल ((सीसीएस-सीसीओ) & gt; 0 & amp; amp; amp; amp;; (सीसीडी-सीसीओ) & gt; 0, 3, # पहला परिणाम + आईफेल ((सीसीएस-सीसीओ) & gt; 0, 1, # 2 परिणामस्वरूप + इफेल ((सीडीडी-सीसीओ)> 1, 2, # 3 + 5)))) # डिफ़ॉल्ट [1] 2   

    ऐसा क्यों कर रहा है?

    यहां कुछ अच्छा कोड है:

      डीएफ & lt; - read.table ( Text = "X5CO X5CS X5CD X5CSD 1 24.87769 24.31233 26.84647 34.3316 2 24.74026 24.31233 26.84647 34.3316 3 24.45217 24.31233 26.84647 34.3316 10 24.87769 24.31233 26.15139 34.3316 11 24.74026 24.31233 26.15139 34.3316 12 24.45217 24.31233 26.15139 34.3316", हेडर = TRUE) # क्लीन-अप कॉलम नाम नाम (डीएफ, (सीसीओ), (सीसीए), (सीसीओ) और एलटी; - जीएसयूएल ("एक्स 5", "सी", नाम (डीएफ)) # लॉगिकल संख्याओं में परिवर्तित हो जाते हैं, जब उन्हें डीएफ, (सीसीओ और एलटी; सीसीडी) + (सीसीओ और एलटी; सीसीडी) + (सीसीओ & gt; = सीसीएसी और सीसीओ & gt; = सीसीडी) * 5) # [1] 2 2 2 2 2 2    

No comments:

Post a Comment