【发布时间】:2015-08-27 20:22:31
【问题描述】:
我想根据所选名称的相似程度创建一个组变量。我已经开始使用 stringdist 包来生成距离度量。但我不确定如何使用该输出信息按变量生成组。我看过 hclust 但似乎使用聚类函数你需要知道你最终想要多少个组,我不知道。我开始的代码如下:
name_list <- c("Mary", "Mery", "Mary", "Joe", "Jo", "Joey", "Bob", "Beb", "Paul")
name_dist <- stringdistmatrix(name_list)
name_dist
name_dist2 <- stringdistmatrix(name_list, method="soundex")
name_dist2
我希望看到一个包含两列的数据框
name = c("Mary", "Mery", "Mary", "Joe", "Jo", "Joey", "Bob", "Beb", "Paul")
name_group = c(1, 1, 1, 2, 2, 2, 3, 3, 4)
显然,根据我使用的距离度量(我在上面建议了两个),这些组可能会略有不同,但我可能会选择其中一个来运行。
基本上,我如何在不知道我想要的聚类数量的情况下从距离矩阵到组变量?
【问题讨论】:
-
这个问题可能太宽泛了,但this 可能会给你一些入门的想法。
-
...确实,一些简单的谷歌搜索会导致一个 stringdist 包,这可能会有所帮助。
-
确实——我一定只是粘贴了部分代码。 stringdistmatrix 是 stringdist 包中的一个函数,用于生成条目之间的距离。在那之后,我无法按距离进行聚类,但我认为下面的 Huck 提供了一个很好的例子,我可以使用。
标签: r grouping fuzzy-comparison stringdist