我有一个包含字符串值的分类属性。其中三个包含dayname(星期一)月份名称和时间间隔(早上下午晚上),另外两个像我之前提到的那样有地区和街道名称。其次是性别,角色,评论(这是一个预定义的固定字段,其值为好,坏的强烈同意等)姓和名。我的意图是对它们进行聚类和可视化。我使用这个WEKA bur应用k均值聚类它没有工作。 现在我想对它应用层次聚类。我发现这个代码:Python中的分类数据的分级聚类
import scipy
import scipy.cluster.hierarchy as sch
X = scipy.randn(100, 2) # 100 2-dimensional observations
d = sch.distance.pdist(X) # vector of (100 choose 2) pairwise distances
L = sch.linkage(d, method='complete')
ind = sch.fcluster(L, 0.5*d.max(), 'distance')
但是,上面的代码中的X是数字;我有分类数据。 有没有什么方法可以使用numarray的分类数据来找到距离? 换句话说,我可以使用字符串值的分类数据来查找距离吗? 那么我会使用距离sch.linkage(d, method='complete')
你如何计划定义字符串之间的距离 - 或者是你的问题的一部分? – Prune
这是一个问题,我的理解是,距离calcualtion的方法可以在sch.distance.pdist中定义。我打算使用余弦函数,但不确定它是否是找到距离的正确方法,所以我的第一个问题是如何在上面的代码中为分类变量定义变量X. – Nhqazi
我猜想的基本问题是如何表示具有多个值的分类变量。我知道kmode方法用于分类变量,但我打算使用分层聚类。 – Nhqazi