2013-07-16 158 views
0

我试图运行K均值聚类下面一组数据的K均值聚类CSV文件,如何采取键和值在中亨利马乌

Name,Gender,Age,Drinks,Country 
John,M,30,Pepsi,US 
Jack,M,25,Coke,US 
David,M,34,Pepsi,UK 
Ted,M,37,Limca,CAN 
Robert,M,23,Limca,US 
Adrian,M,31,Pepsi,US 
Craig,M,37,Coke,UK 
Katie,F,23,Limca,UK 
Nancy,F,32,Pepsi,UK 

我想基于集群的饮料(数据百事可乐,可口可乐,Limca),我可以做到这一点。但我想回顾一下名称以及集群数据。

我得到的输出是

0 
1 
2 
Limca belongs to cluster:0 
Cokde belongs to cluster:0 
etc. 

在这里,我想的名字也。

而转换为序列文件我拿着钥匙饮料和值作为文本的休息和转换为斯帕塞夫克托,然后运行K均值聚类,名称不打印。 任何人都可以指出我如何从值中存在的集群中提取名称。

回答

0

您可能需要{百事可乐,可口可乐,百事可乐,Limca}转换为类似{1001,1002,1001,1003},再转换回原来的值。

但作为一个答案中提到,只是饮料获得一组可能不是一个集群的工作,它只是一个SQL查询。如果你的问题比分组更复杂,那么你可以尝试我在上面提到的方法。

+0

:谢谢你的回答,我没有得到你的答案。我有一个来自社交媒体数据的50k记录,如上面给出的样本。我想对它们进行聚类,以便应该有各种饮料的聚类。例如:聚簇百事可乐这是在mahout集群的正确问题。 – maali

+0

如果问题很简单,可以根据饮料对用户进行分组,只需使用数据库查询而不是集群。对于一个复杂的事情,需要进行聚类,例如根据多个特征(如年龄,性别,分组等)形成聚类,或者如果数据集太分散,不像{PEPSI,COKE等}定义的集合。 – Swamy

+0

谢谢,我能够通过多个功能集群,感谢指针.. – maali

0

K-Means对向量空间进行操作。

它绝对需要能够计算意味着

但是什么是{Pepsi, Coke, Pepsi, Limca}的平均值?

对不起,您正在尝试使用锤子,但您没有钉子!

如果你想数据通过他们的饮料,这不是一个聚类任务。

也许尝试一个基于Hadoop的SQL系统。因为很显然,你要执行一个SQL经典操作:GROUP BY Drinks

哦,你的问题是计算器题外话。你是使用 Hadoop,但你并没有冒充编程的问题!

+0

如何计算在this.i平均为50,000来自社交媒体的记录,我想他们群集,你能解释一下聚集输出可能是套用kmeans.Basiclly后,我转换的CSV文件seqfile再到sparsevetcor作为mahout集群的输入。 – maali

+0

你不想用k-means对它们进行聚类。你想**用**组**他们。 Mahout是错误的工具! –

+0

:感谢您的建议,现在我正在采取许多参数来达到在mahout中的集群。 – maali

相关问题