python – Scipy稀疏 – 距离矩阵(Scikit或Scipy)
我试图在scikit-learn的DictVectorizer返回的Scipy稀疏矩阵上计算最近邻居聚类.但是,当我尝试使用scikit-learn计算距离矩阵时,我通过pairwise.euclidean_distances和pairwise.pairwise_distances使用’euclidean’距离得到错误消息.我的印象是scikit-learn可以计算这些距离矩阵. 我的矩阵非常稀疏,形状为:< 364402x223209稀疏矩阵类型< class'numpy.float64'> 我也在Scipy中尝试了诸如pdist和kdtree之类的方法,但是还收到了其他无法处理结果的错误. 任何人都可以请我指出一个有效地允许我计算距离矩阵和/或最近邻结果的解决方案吗? 一些示例代码:
错误:
同样,如果我跑:
我得到以下内容:
最后,在scikit-learn中运行NearestNeighbor会导致内存错误,使用:
最佳答案
首先,你不能使用稀疏矩阵的KDTree和pdist,你必须将它转换为密集(你的选择是否是你的选择):
第二,从the docs:
您可能想尝试’ball_tree’算法并查看它是否可以处理您的数据. (编辑:台州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- python – 如何克服 – 在windows上使用文件名或扩展名失败
- 匹配词典集.最优雅的解决方案Python
- Python Pandas:如果数据是NaN,则更改为0,否则在数据框中更
- python – django:django-tables2 DetailView CBV不会显示
- python – 重新分发字典值列表
- python – 改变seaborn heatmap颜色条上的刻度尺寸
- Python更改接口通道
- python – 整数除法:对于所有整数a,b,// b == int(a / b)为
- Django迁移是否应该在源代码控制中生效?
- python – 你如何从雅虎财经中提取每周的历史数据?