k 均值聚类中的汉明距离

发布于 2025-01-08 00:31:19 字数 126 浏览 0 评论 0原文

我想在 Matlab 中的 kmeans 聚类中使用汉明距离,但收到一条错误消息,指出我的数据必须是二进制的。

这附近还有吗?我使用的数据矩阵不能是二进制的(它的物理解释必须允许值 0,1,2,3),但使用汉明距离很重要。

I want to use the hamming distance in kmeans clustering in Matlab, but I get an error saying that my data must be binary.

Is there anyway around this? The data matrix that I use can't be binary (it has a physical interpretation that must allow for values 0,1,2,3) but it's important that I use the Hamming distance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

徒留西风 2025-01-15 00:31:19

根据 MA​​TLAB 文档kmeans< 的汉明距离测量/code> 只能与二进制数据一起使用,因为它是不同位百分比的度量。

在使用该函数之前,您可以尝试将数据映射为二进制表示形式。如果可能的话,您还可以考虑使用城市街区距离作为替代方案,因为它适合非二进制输入。

Per the MATLAB documentation, the Hamming distance measure for kmeans can only be used with binary data, as it's a measure of the percentage of bits that differ.

You could try mapping your data into a binary representation before using the function. You could also look at using the city block distance as an alternative if possible, as it is suitable for non-binary input.

空心空情空意 2025-01-15 00:31:19

要聚类的数据必须是逻辑类型。您可以通过单个命令转换 0/1 double、single、uintX 数据:

x = logical( y );

如果要将 uint8 类型数据转换为二进制,请检查函数 uint8tobit()。看一下 de2bi() 和 bi2de() 函数。

The data to cluster must be of type logical. You can convert your 0/1 double, single, uintX data by a single command:

x = logical( y );

If you want to convert uint8 type data to binary, check the function uint8tobit(). Take a look at de2bi() and bi2de() functions.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文