在 stringdist 中使用 stringsim
Using stringsim in stringdist
我正在使用包 stringdist 来比较一些字符串向量,但是当我尝试测试包时,我得到的答案与我认为应该得到的答案不同。
我想这样做:
stringsim('PANDIAN', 'PANIAN', method="lv")
[1] 0.8571429
数据框中的 2 列
stringsim(testdf.lv$Last[1], testdf.lv$matchedname[1], method="lv")
但是我得到这个错误:
Error in UseMethod("lengths") :
no applicable method for 'lengths' applied to an object of class "factor"
我需要能够做到这一点,因为理想情况下,我会用 i 替换行号,然后 运行 在一个循环中替换它。这可能吗?我试着寻找类似的错误,但其他问题不是很有帮助。
感谢@MrFlick。原来我在列中使用的数据:
testdf.lv$Last
被错误地描述为因子变量而不是字符。将该列更改为具有以下内容的字符:
testdf.ld$Last <- as.character(testdf.ld$Last)
修复了错误,我能够将代码重写为 for 循环以遍历整个数据帧。
我正在使用包 stringdist 来比较一些字符串向量,但是当我尝试测试包时,我得到的答案与我认为应该得到的答案不同。
我想这样做:
stringsim('PANDIAN', 'PANIAN', method="lv")
[1] 0.8571429
数据框中的 2 列
stringsim(testdf.lv$Last[1], testdf.lv$matchedname[1], method="lv")
但是我得到这个错误:
Error in UseMethod("lengths") :
no applicable method for 'lengths' applied to an object of class "factor"
我需要能够做到这一点,因为理想情况下,我会用 i 替换行号,然后 运行 在一个循环中替换它。这可能吗?我试着寻找类似的错误,但其他问题不是很有帮助。
感谢@MrFlick。原来我在列中使用的数据:
testdf.lv$Last
被错误地描述为因子变量而不是字符。将该列更改为具有以下内容的字符:
testdf.ld$Last <- as.character(testdf.ld$Last)
修复了错误,我能够将代码重写为 for 循环以遍历整个数据帧。