मेरे पास एक डेटा सेट है जो अनुपयुक्त वाक्यों से भरा है। मैं कुछ रिक्त स्थान को हटाने के लिए एक रास्ते के साथ आने की कोशिश कर रहा हूं।आर में वर्तनी करने के लिए शब्दों का एक वेक्टर चेक करें
> word5 <- "hotter the doghou se would be bec ause the co lor was diffe rent"
> abc1 <- data.frame(filler1 = 1,words1=factor(unlist(strsplit(word5, split=" "))))
> abc1
filler1 words1
1 1 hotter
2 1 the
3 1 doghou
4 1 se
5 1 would
6 1 be
7 1 bec
8 1 ause
9 1 the
10 1 co
11 1 lor
12 1 was
13 1 diffe
14 1 rent
अगला मैं निम्नलिखित कोड का उपयोग कोशिश करते हैं और जाँच करें और शब्द है कि पहले या बाद में शब्द का संयोजन कर रहे हैं गठबंधन वर्तनी:
मैं एक वाक्य है कि मैं शब्दों का एक डेटा फ्रेम में बदलने के साथ शुरू उन्हें:
abc2 <- abc1
i <- 1
while(i < nrow(abc1)){
print(abc2)
if(nrow(aspell(abc1$words1[i])) == 0){
print(paste(i,"Words OK",sep=" | "));flush.console()
i <- i + 1
}
else{
if(nrow(aspell(abc1$words1[i])) > 0 & i != 1){
preWord1 <- abc1$words1[i-1]
postWord1 <- abc1$words1[i+1]
badWord1 <- abc1$words1[i]
newWord1 <- factor(paste(preWord1,badWord1,sep=""))
newWord2 <- factor(paste(badWord1,postWord1,sep=""))
if(nrow(aspell(newWord1)) == 0 & nrow(aspell(newWord2)) != 0){
abc2[i,"words1"] <-as.character(newWord1)
abc2 <- abc2[-c(i+1),]
print(paste(i,"word1",sep=" | "));flush.console()
i <- i + 1
}
if(nrow(aspell(newWord1)) != 0 & nrow(aspell(newWord2)) == 0){
abc2[i ,"words1"] <-as.character(newWord2)
abc2 <- abc2[-c(i-1),]
print(paste(i,"word2",sep=" | "));flush.console()
i <- i + 1
}
}
}
}
कुछ समय मैं निष्कर्ष है कि मैं iterator किसी प्रकार की जरूरत है, लेकिन कैसे आर में इसे लागू करने कोई सुझाव के अनिश्चित हूँ करने के लिए आ रहा हूँ के लिए इस के साथ खेलने के बाद?
यह कैसे काम नहीं करता है तो आप हमें बता सकते हैं? मुझे लगता है कि आप शायद बेवकूफ, या लापरवाही कार्यों की तलाश में हैं। यदि आप अपना स्वयं का फ़ंक्शन परिभाषित करते हैं और फिर 'lapply (abc1 $ words1, yourFunctionNameHere)' करते हैं तो यह 'adc1 $ words1' के प्रत्येक तत्व पर लूप होगा और पैरामीटर के रूप में पारित उस तत्व के साथ अपना फ़ंक्शन कॉल करेगा। यदि फ़ंक्शन को पास करने के लिए अन्य पैरामीटर हैं तो आप फ़ंक्शन नाम –