मुझे आश्चर्य है कि आर भाषा में असाइनमेंट कैसे काम करता है।आर भाषा में असाइनमेंट
> x <- c(5, 6, 7)
> x[1] <- 10
> x
[1] 10 6 7
>
जो मैं पूरी तरह समझ में:
निम्नलिखित आर खोल सत्र पर विचार करें। वेक्टर (5, 6, 7) बनाया गया है और प्रतीक 'एक्स' से बना है। बाद में, 'एक्स' नए वेक्टर (10, 6, 7) के लिए रिबाउंड है क्योंकि वेक्टर अपरिवर्तनीय डेटा संरचनाएं हैं।
लेकिन यहाँ क्या होता है:
> c(4, 5, 6)[1] <- 10
Error in c(4, 5, 6)[1] <- 10 :
target of assignment expands to non-language object
>
या यहाँ:
> f <- function() c(4, 5, 6)
> f()[1] <- 10
Error in f()[1] <- 10 : invalid (NULL) left side of assignment
>
मुझे ऐसा लगता है कि एक ही नाम पर रखा गया डेटा संरचनाओं को मान निर्दिष्ट कर सकते हैं ('एक्स' की तरह)।
कारण मैं पूछ रहा हूं क्योंकि मैं आर भाषा कोर को लागू करने का प्रयास करता हूं और मैं इस तरह के असाइनमेंट से निपटने के लिए अनिश्चित हूं।
अग्रिम
एक बड़ा सवाल है कि। आपको यहां कुछ उत्तरों में अंतर्दृष्टि मिल सकती है: http://stackoverflow.com/questions/10449366/levels-what-sorcery-is-this –