进行余弦相似度时如何忽略/屏蔽 nan 值

发布于 2025-01-13 08:48:57 字数 287 浏览 3 评论 0原文

我有一个包含 nan 值的数组,例如:

a = np.array([[np.nan, 1, 5], [5,np.nan,np.nan]])

我是尝试计算余弦相似度(尝试使用 sklearn.metrics.pairwise.cosine_similarity ),但它当然不适用于 nan 值。

我尝试使用 b = np.ma.MaskedArray(a, mask = np.isnan(a)) 屏蔽数组,但这给出了相同的错误。有没有办法在忽略空值的同时计算余弦相似度,或者是否需要插补?

I have an array with nan values, for example:

a = np.array([[np.nan, 1, 5], [5,np.nan,np.nan]])

I am trying to calculate the cosine similarity (trying with sklearn.metrics.pairwise.cosine_similarity) but it of course does not work with nan values.

I have tried masking the array with b = np.ma.MaskedArray(a, mask = np.isnan(a)), but that gives the same error. Is there a way to calculate the cosine similarity while ignoring the null values, or is imputation necessary?

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

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

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文