2
我这里列有一些拼写错误的字符串表,让说,作为一个例子正确的参数替换表中的拼写错误的单词:如何使用,使用R
table$Status
回报这些值:
"alive" "sic" "alive" "sick" "alive" "si" "alive" "ali" "alv"
"dead" "alive" "alive" "alive" "al" "dead" "dead" "de" "dead"
"dead" "dea" "dead" "al" "dead" "de" "al" "de" "sick"
"dead" "alive"
我想有活着,生病或死像下面的例子:
"alive" "sick" "alive" "sick" "alive" "sick" "alive" "alive" "alive"
"dead" "alive" "alive" "alive" "alive" "dead" "dead" "dead" "dead"
"dead" "dead" "dead" "alive" "dead" "dead" "alive" "dead" "sick"
"dead" "alive"
我知道有从包RecordLinkage
这个函数来得到这样的字符串之间的距离:
levenshteinSim("al", "alive")
所以我会比较其他每一个值,并获得最佳的相似性,我也知道用table(Table$Status)
我会得到最重复的值的数量,那些将是正确的。
但是,这是我的问题我怎么能比较他们所有相互并替换我的表?如果有人知道一个简单的方法来做这将是非常有帮助的。
这有效,但它对我的例子非常具体当我有一个10000个值的表时会发生什么?我怎么知道这些是拼写错误的单词? –
@quant我会建议在嵌套的'ifelse'上使用'dplyr :: case_when'。 @ProgrammerMan如果它不那么具体,就没有办法确定'al'是什么意思。 “活着”还是“全部”?也许'啤酒'? Ofc您应该对第一个符号使用模糊匹配,但您仍然必须提供全文的模式以供比较。 –
@quant非常感谢你这个作品! –