Я пытаюсь кластеризовать ключевые фразы из истории поиска, используя K означает кластеризацию, но я сталкиваюсь с ошибкой «не удается выделить вектор размером 30 ГБ», когда я запускаю команду stringdistmatrix (). Набор данных, который я использую, содержит 63455 уникальных элементов, поэтому для обработки полученной матрицы требуется около 30 ГБ памяти. Есть ли способ снизить требования к процессу, не теряя при этом большого значения?
Ниже приведен код, который я пытаюсь запустить, если вы заметили какие-либо другие ошибки:
#Set data source, format for use, check consistency
MyData <- c('Create company email', 'email for business', 'free trial', 'corporate pricing', 'email cost')
summary(MyData)
#Define number of clusters
kclusters = round(0.90 * length(unique(MyData)))
#Compute distance between words
uniquedata <- unique(as.character(MyData))
distancemodels <- stringdistmatrix(uniquedata, uniquedata, method="jw")
#Create Dendrogram
rownames(distancemodels) <- uniquedata
hc <- hclust(as.dist(distancemodels))
par(mar = rep(2, 4))
plot(hc)
#Create clusters from grouped keywords
dfClust <- data.frame(uniquedata, cutree(hc, k=kclusters))
names(dfClust) <- c('data','cluster')
plot(table(dfClust$cluster))
#End view
view(dfClust)