学习小插曲01---多维标度法降维mds(python×matmab√)

问题

最近做聚类的时候发现在做一个名为anonymous-microsoft web.data的多维数据集的时候,因为该数据集没有标签,在自己打标签的过程中遇到了一些问题。因为python用的比较多一直以来对py看的很重,以为他那个方面都很厉害。这不问题就来了:
在这里插入图片描述
调用方法如下:

from sklearn.manifold import MDS

mds = MDS()
data = mds.fit_transform(这里面放距离矩阵哦)

可这蓝茫茫的一片也没啥效果啊…
然后在网上看了一些其他人自己写的这个MDS降维算法,发现和这个是差不多的。郁闷了好一阵子…

解决

后来在一篇论文中发现MATLAB中也有这类算法,并且人家有成功的例子,我赶紧拿来试一试,哇咔咔
在这里插入图片描述
而且MATLAB是专门处理矩阵的工具,python做这个用了我笔记本30min左右才跑出来,MATLAB只用了不到5min。哦对了附上引用代码:

%这是MATLAB里面哦
data = csvread('distance.csv');
data_xy = mdscale(data,2,'criterion','metricsstress');
'''
mdscale()里面的后2个参数保证了同一个地方有两个点不会报错
'''

我果然现在还是个渣渣。
另外,我感觉sklearn中的MDS应该是另有用处,只是它的价值我没用好吧,如果有带劳能给我解除疑惑,为什么这两种方法的不同,欢迎评论留言…

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值