使用lapply进行许多组的k均值聚类

时间:2014-11-25 15:31:04

标签: r cluster-analysis apply lapply

我有大约10万人,每人都有旅行时间。我试图为每个人获得一个聚类(即总共100,000个聚类应用程序。)每个人应该至少有15次旅行,所以我不明白为什么会出现以下错误,除非这个条件确实不正确。或者可能是我错误地使用了lapply函数?

我运行以下代码:

gr_TILPS <- lapply( split(TILPS, TILPS[,"CustomerCard_Num"]),
                    FUN=kmeansfunction)

只有在包含所有组时才会出现以下错误。它在前10,000个左右工作。

Error in kmeans(x, 2) : more cluster centers than distinct data points. 
5 stop("more cluster centers than distinct data points.") 
4 kmeans(x, 2) 
3 FUN(X[[32861L]], ...) 
2 lapply(split(TILPS, TILPS[, "CustomerCard_Num"]), FUN = kmeansfunction) 
1 clusterhouseholds(TILPStest, 0.25)

有没有办法检查哪个customerid导致此错误?当我用

检查长度时
aggregate(TILPS$col1, by=list(TILPS$CustomerCard_Num), FUN=length)

(顺便说一下,为什么这段代码这么慢?这不是很令人尴尬的并行吗?)

每次观察它们都是> 15。根据R。

,我只是想知道是否有可能检查WHICH客户ID是否导致错误

编辑:

我发现这些旅行在x变量方面并不明显,谢谢。它们在不同日期发生的意义不同,但总是在同一时间!

0 个答案:

没有答案
相关问题