clustMixType r包的kproto函数

时间:2016-11-08 16:50:12

标签: r cluster-analysis

我正在尝试使用R中clustMixType包的kproto函数对我的数据运行kprototype聚类算法,但它不起作用 我有1000行和5个变量:只有一行是分类的,其他的已经缩放(当没有缩放时仍然无法工作)

一直说:

  

估计的lambda:Inf   合并的原型合并。群集数量减少到:3   表(簇)中的错误:所有参数必须具有相同的长度   另外:警告信息:   在kproto.default(inputdata_test,4)中:   所有分类变量的方差均为零。

或者我的分类变量至少有3个属性,数值变量都至少有2个不同的值,并且数据框中没有NaN值。

我的数据有一小部分摘录

data

2 个答案:

答案 0 :(得分:1)

首先,不要在kproto中使用scale function()。但是当你使用k-means时使用它。 其次,将分类特征的字符更改为数字。例如,其他= 1,平板电脑= 2,手机= 3 ......

并且,当我看到您的错误消息时..

  

所有参数必须具有相同的长度另外

这意味着您的变量数据行是不同的。所以检查你的数据集。

而且,

  

所有分类变量的方差均为零。

这意味着分类变量在方差方面存在问题。 检查此代码。

lambdaest(df of kproto)

祝你有个愉快的一天。

答案 1 :(得分:0)

如果数据中有NA,

kproto也会抛出Error in table(clusters) : all arguments must have the same length

我在数据框上使用na.omit修复此问题。