【发布时间】:2014-08-08 07:16:43
【问题描述】:
尝试使用 R 中 cluster 包中的 daisy 函数将具有数值、名义和 NA 值的 data.frame 转换为相异矩阵。我的目的是在应用 k-means 聚类之前创建一个相异矩阵用于客户细分。 data.frame 有 133,153 行和 36 列。这是我的机器。
sessionInfo()
R version 3.1.0 (2014-04-10)
Platform x86_64-w64-mingw32/x64 (64-bit)
如何解决菊花警告?
由于 Windows 计算机有 3 Gb RAM,我将虚拟内存增加到 100 GB,希望这足以创建矩阵 - 它没有工作。我仍然有一些关于内存的错误。我研究了其他 R 包来解决内存问题,但它们不起作用。我不能将bigmemory 与biganalytics 包一起使用,因为它只接受数字矩阵。 clara 和 ff 包也只接受数字矩阵。
CRAN 的 cluster 包建议在应用 k-means 之前将 gower 相似系数作为距离度量。高尔系数采用数值、名义和 NA 值。
Store1 <- read.csv("/Users/scdavis6/Documents/Work/Client1.csv", head=FALSE)
df <- as.data.frame(Store1)
save(df, file="df.Rda")
library(cluster)
daisy1 <- daisy(df, metric = "gower", type = list(ordratio = c(1:35)))
#Error in daisy(df, metric = "gower", type = list(ordratio = c(1:35))) :
#long vectors (argument 11) are not supported in .C
**编辑:我将 RStudio 与 Amazon Web Service (AWS) 的 r3.8xlarge 对齐,具有 244Gbs 的内存和 32 个 vCPU。我尝试在我的计算机上创建菊花矩阵,但没有足够的 RAM。 **
**编辑 2:我使用 clara 函数对数据集进行聚类。 **
#50 samples
clara2 <- clara(df, 3, metric = "euclidean", stand = FALSE, samples = 50,
rngR = FALSE, pamLike = TRUE)
【问题讨论】:
-
有人有什么建议吗?
标签: r csv amazon-ec2 cluster-analysis r-daisy