क्या लूप का उपयोग करने से काउंटर इंडेक्स बनाने का कोई तेज़ तरीका है? समान मूल्यों के संगत रनों के भीतर, सूचकांक एक जैसा होना चाहिए। मुझे लूपिंग बहुत धीमी लगती है खासकर जब डेटा इतना बड़ा होता है।बराबर मानों के संगत रनों में इंडेक्स जोड़ें
उदाहरण के लिए, यहाँ इनपुट और वांछित आउटपुट है
x <- c(2, 3, 9, 2, 4, 4, 3, 4, 4, 5, 5, 5, 1)
वांछित जिसके परिणामस्वरूप काउंटर:
c(1, 2, 3, 4, 5, 5, 6, 7, 7, 8, 8, 8, 9)
ध्यान दें कि गैर -contiguous रन अलग अनुक्रमित है। जैसे मूल्यों 2
और 4
मेरे अक्षम कोड के वांछित अनुक्रमित देखना यह है:
group[1]<-1
counter<-1
for (i in 2:n){
if (x[i]==x[i-1]){
group[i]<-counter
}else{
counter<-counter+1
group[1]<-counter}
}
धन्यवाद TimoSta =) – Rens