No real need to answer. I found that function 'metaphone' from package
"phonics" doesn't misbehave this way!
library(phonics)
mymetaphone = function(x){
temp <- strsplit(x, split=" ")[[1]]
for(word in 1:length(temp)){
temp[word]<-metaphone(temp[word])
}
return(paste(temp, collapse = ""))
}
The next 4 lines return the same thing:
metaphone("netflix")
metaphone("net flex")
mymetaphone("netflix")
mymetaphone("net flex")
Dimitri
On Wed, Dec 14, 2016 at 2:35 PM, Dimitri Liakhovitski
wrote:
> I was wondering if anyone can answer this question.
>
> library(PGRdup)
>
> Both lines below return "NTFL".
> DoubleMetaphone("netflix")$primary
> DoubleMetaphone("net flex")$primary
>
> Now, I modify the function a bit - I first split the string on
> "space", then merge back together:
>
> mymetaphone = function(x){
> temp <- strsplit(x, split=" ")[[1]]
> for(word in 1:length(temp)){
> temp[word]<-DoubleMetaphone(temp[word])$primary
> }
> return(paste(temp, collapse = ""))
> }
> mymetaphone("netflix")# returns "NTFL"
> mymetaphone("net flex") # returns "NTFLKS"
>
> Why such a difference between DoubleMetaphone("net flex")$primary and
> mymetaphone("net flex")?
> Why isn't DoubleMetaphone("net flex")$primary returning "NTFLKS"?
> Thank you!
>
> --
> Dimitri Liakhovitski
--
Dimitri Liakhovitski
__
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.