请选择 进入手机版 | 继续访问电脑版
楼主: zlj1986
14055 7

[程序分享] 分类变量怎么做聚类分析呀?求大侠帮忙,急!谢谢! [推广有奖]

  • 0关注
  • 0粉丝

高中生

10%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
206 点
帖子
19
精华
0
在线时间
9 小时
注册时间
2012-11-28
最后登录
2015-8-11

zlj1986 发表于 2012-12-7 11:03:09 |显示全部楼层 |坛友微信交流群

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
各位大侠:
      小女子第一次发帖,想请教一个关于分类资料的聚类问题。举个例子:我的数据变量有病例所在的地区、发病季节、性别、职业、病例症状体征、病原检测结果(阴性、阳性)等,这些协变量都是分类的,我想要依靠这些变量将病例按年龄大小有序的聚类,该怎么弄啊?我看到的资料都是对定量资料做聚类,没找到对分类资料做聚类的例子。各位大侠行行好,指点一下吧?给个SAS程序或者指点一个方向,万分感谢!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:聚类分析 分类变量 怎么做 第一次发帖 sas程序 小女子 程序 检测 职业 资料

ziyenano 发表于 2012-12-7 17:48:19 |显示全部楼层 |坛友微信交流群
分类变量聚类,其实质也要计算两个观测之间的“距离”~
通常采用jaccard系数来计算相似度作为距离:
比如 i观测:2  3  A  B   5
        j观测:1  3  C  B   5
之间的距离可定义为:sim(ij)=(上下不同的个数/总的变量数) =2/5
即 i,j之间的距离为2/5;
将每个观测与其他观测的距离分别算出来,组成一个距离矩阵(这步比较麻烦)。
最后可以用SAS中的分层聚类方法;
proc cluster data=data(type=distance) method=;
不过我提供的这方法对大数据肯定实现不了了,距离矩阵肯定算不来。

使用道具

zlj1986 发表于 2012-12-8 00:20:45 |显示全部楼层 |坛友微信交流群
ziyenano 发表于 2012-12-7 17:48
分类变量聚类,其实质也要计算两个观测之间的“距离”~
通常采用jaccard系数来计算相似度作为距离:
比如 ...
非常感谢您的回复,我的数据有十几万条,能行吗?那个距离我在书上看到过的,叫“配合距离”,就是您说的那个原理,看起来很简单,不过计算过程我就不晓得该怎么编程实现了,您说的“将每个观测与其他观测的距离分别算出来,组成一个距离矩阵(这步比较麻烦)。”我应该怎么弄啊?您能不能给个程序参考下,万分感谢!

使用道具

zlj1986 发表于 2012-12-8 00:23:17 |显示全部楼层 |坛友微信交流群
楼上的ziyeno,不好意思,我给你的回复发到楼下去了,新手还没熟悉操作流程,忘见谅

使用道具

zmy_ruc 发表于 2012-12-8 00:45:34 |显示全部楼层 |坛友微信交流群
楼主好牛啊

使用道具

cricke 发表于 2012-12-8 10:10:55 |显示全部楼层 |坛友微信交流群
十万*十万是个多大的矩阵,楼主好好想想,cluster每步都会计算上步合并后类之间的距离矩阵
OMG,多大的计算量,虽然只有十几万数据,不过单独用这个方法不可行,还要做些处理,结合其他算法的

使用道具

zlj1986 发表于 2012-12-11 19:51:00 |显示全部楼层 |坛友微信交流群
谢谢大家的建议,非常感谢,最后我的导师觉得做聚类没有意义,那我也不纠结这个算法的实现了,确实不好计算,谢谢大家的帮助!

使用道具

wujiang814 发表于 2015-6-29 14:55:20 |显示全部楼层 |坛友微信交流群
有价值

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-3-29 04:47