Я хотел бы создать групповые переменные на основе того, насколько похож выбор имен. Я начал с использования пакета 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)
Группы могут немного различаться в зависимости от того, какую меру расстояния я использую (выше я предложил две), но я, вероятно, выберу одну или другую для запуска.
По сути, как мне перейти от матрицы расстояний к групповой переменной, не зная желаемого количества кластеров?