首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python/numpy:在np.allclose()中使用自己的数据结构?在哪里寻找需求/它们是什么?

python/numpy:在np.allclose()中使用自己的数据结构?在哪里寻找需求/它们是什么?
EN

Stack Overflow用户
提问于 2012-03-21 08:48:43
回答 1查看 424关注 0票数 1

我正在实现一个矩阵乘积状态类,它是python/numpy中用于快速算法原型的一种特殊的张量分解方案。

我不认为已经有这样的事情,我想自己去做,以便对这个计划有一个适当的了解。

我想要的是,如果我以T_mps的形式存储给定的张量T,我可以通过T_mps[ i0,i1,.,iL ]访问重构的元素。这是通过getitem(self,key)方法实现的,并且工作得很好。

现在我想使用numpy.allclose(T,mps_T)来验证我的分解是否正确。

但是,当我这样做时,我会得到我自己的类型的类型错误:

TypeError:这些类型不支持的函数,并且不能安全地强制使用支持的类型

我看了allclose的文档,据说该函数适用于“类似数组”的对象。现在,这个“数组类似”的概念是什么,我在哪里可以找到它的规范?

也许我更好,实现我自己的全封闭方法?但这会在一定程度上重新发明车轮,不是吗?

感谢您的帮助,谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-03-21 10:03:17

在numpy文档中使用了"arraylike“这个术语,意思是”可以传递给numpy.asarray()的任何东西都可以返回适当的numpy.ndarray“。使用适当的__len__()__getitem__()方法的大多数序列工作正常。请注意,__getitem__(i)必须能够接受range(len(self))中的单个整数索引,而不仅仅是您似乎表示的索引列表。这个__getitem__(i)的结果必须是numpy所知道的原子值,比如float或int,或者是上面所述的另一个序列。如果没有更多关于Matrix实现的详细信息,这就是我所能帮助的全部。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9801235

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档