4

一部のテキストから短い単語と長い単語を削除するコードは次のとおりです。

# Remove Words based on lowerCutOff & upperCutOff
removeByLength<- function(text,lowerCutOff=2,upperCutOff=12){
  text<- gsub("\\b[a-zA-Z0-9]{1,lowerCutOff}\\b|\\b[a-zA-Z0-9]{upperCutOff,}\\b"," ",text)
  return(text)
}

下限と上限のカットオフをハードコーディングせずに、必要な機能を実現するにはどうすればよいですか?

4

1 に答える 1

4

paste文字列を連結してパターンを作成するために使用します。

removeByLength<- function(text,lowerCutOff=2,upperCutOff=12){
  pattern <- paste("\\b[a-zA-Z0-9]{1,",lowerCutOff,
                 "}\\b|\\b[a-zA-Z0-9]{",upperCutOff,",}\\b", sep="")
  text <- gsub(pattern, " ", text)
  return(text)
}
于 2012-12-10T15:20:15.597 に答える