में वेक्टर ऑपरेशंस तो पहले मैंने आर में वैक्टरों में सोचने पर अपने स्वयं के प्रश्न का उत्तर दिया। लेकिन अब मुझे एक और समस्या है जिसे मैं 'सदिश नहीं' कर सकता हूं। मुझे पता है कि वेक्टर तेज हैं और धीमे हो जाते हैं, लेकिन मुझे यह नहीं पता कि वेक्टर विधि में इसे कैसे किया जाए:मेरी सोच का वेक्टरिज़ करें: आर
मेरे पास डेटा फ्रेम है (जो भावनात्मक कारणों से मैं my.data को कॉल करना चाहता हूं) जो मैं चाहता हूं पर एक पूर्ण सीमांत विश्लेषण करने के लिए। मुझे एक समय में कुछ तत्वों को हटाने और डेटा फ्रेम को 'मूल्य' करने की आवश्यकता है, फिर मुझे केवल अगले तत्व को हटाकर फिर से पुनरावृत्ति करने की आवश्यकता है। फिर फिर से करें ... और फिर ... विचार मेरे डेटा के सबसेट पर पूर्ण सीमांत विश्लेषण करना है। किसी भी तरह, मैं एक वेक्टर कुशल तरीके से ऐसा करने के बारे में कल्पना नहीं कर सकता।
मैं कोड के पाशन हिस्सा नीचे छोटा कर दिया है और यह इस तरह दिखता है:
for (j in my.data$item[my.data$fixed==0]) { # <-- selects the items I want to loop
# through
my.data.it <- my.data[my.data$item!= j,] # <-- this kicks item j out of the list
sum.data <-aggregate(my.data.it, by=list(year), FUN=sum, na.rm=TRUE) #<-- do an
# aggregation
do(a.little.dance) && make(a.little.love) -> get.down(tonight) # <-- a little
# song and dance
delta <- (get.love) # <-- get some love
delta.list<-append(delta.list, delta, after=length(delta.list)) #<-- put my love
# in a vector
}
तो जाहिर है मैं बाहर सामान का एक गुच्छा बीच में काट दिया, बस इसे कम अनाड़ी बनाने के लिए। लक्ष्य कुछ और वेक्टर कुशल का उपयोग कर जे लूप को हटाना होगा। कोई विचार?
@joran: वहाँ 30 महीने पुराना एक प्रश्न संपादित करने के लिए एक पुरस्कार होना चाहिए। :) – Iterator
necromancer के कुछ संस्करण, शायद? –
अच्छा विचार। मैं एक प्राकृतिक इतिहास की तरह कुछ सोच रहा हूं संग्रहालय क्यूरेटर कम morbid हो सकता है। या शायद जुरासिक पार्क? – Iterator