我有两个数据集。 一个是假设修复描述
Electric Component keyboard replacement
第二个数据集是所有具有以前修复短语并且稍后具有一些修复描述的客户的所有修复描述。 例如:
Electric Keyboard replace
Monitor Component Replacement
Mouse component
Wire Replacement
PIN part
所以对于这个例子,我希望从第二组选择“电子键盘替换”作为“电子元件键盘更换”的最类似的短语
DATA NAME;
INFILE DATALINES DSD;
length FIRST $ 1000;
INPUT FIRST $;
DATALINES;
Electric Component keyboard replacement
;
DATA COMPONENT;
INFILE DATALINES DSD;
length FIRST_B $ 1000;
INPUT FIRST_B $;
DATALINES;
Electric Keyboard replace
Monitor Component Replacement
Mouse component
Wire Replacement
PIN part
;
PROC SQL;
CREATE TABLE Possible_Matches AS
SELECT *
FROM Name AS n, COMPONENT AS b
WHERE (n.FIRST =* b.FIRST_B);
QUIT;
它使用声音像操作员,我很兴奋。但是,当我尝试这个例如在哪里 我改为“键盘组件更换”而不是“电子键盘更换”。 它没有确定它给了我空白数据集。我也试过“比较”,但无法实现。我尝试了这种方法,因为我看到了一些名称和电子邮件ID更正或匹配的示例。但是,使用这些功能可以匹配similair短语吗?有没有其他解决方案来实现这一目标?通常我的匹配将是重新排列的单词或额外的单词或更短的单词(如替换替换)
答案 0 :(得分:0)
我也设法使用comped在名称和地址上做类似的事情! 使用初始表中需要扫描的字段创建数据集,以便将要扫描的每条记录乘以需要匹配的修复类型 因此,您最终会遇到这样的情况(抱歉,无法在此处显示表格): -字段1-字段2: 更换电子组件键盘-更换电子键盘 更换电子组件键盘-更换显示器组件 电气组件键盘更换-鼠标组件 电气组件键盘更换-电线更换 电气组件键盘更换-PIN部分
从那里,您在这些too字段上运行comping,它将为您提供所有试图获取的所有单词匹配的数字输出
compged(string1, string2);
然后对您的组合结果进行排名,然后在该表上查询以仅获取组合值最低的记录
请注意,这并不意味着您的2个句子将是真正的匹配,但只会保留最有可能匹配的那些句子!