类型错误:'努比·恩达雷'对象在使用带状/稀疏矩阵时不可调用

2024-03-29 01:08:23 发布

您现在位置:Python中文网/ 问答频道 /正文

你好,我正在尝试创建一个带状矩阵-当我试图提取上对角线并向数组中添加一个0时,我得到以下错误-“TypeError:”努比·恩达雷“对象不可调用”

>>> A = np.eye(5, k=-1) -2 * np.eye(5) + np.eye(5, k=1)
>>> udA = np.insert (np.diag(A, 1), 0, 0)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'numpy.ndarray' object is not callable
>>>

我做错了什么-我对python很陌生。谢谢您。在


Tags: 对象most错误np矩阵数组calldiag
1条回答
网友
1楼 · 发布于 2024-03-29 01:08:23

您使用的是什么版本?在我的版本(1.9)中,您的代码可以工作。在

我认为在insert函数中使用np.diag是个问题。在

在1.9版本中,np.diag出现以下警告:

See the more detailed documentation for numpy.diagonal if you use this function to extract a diagonal and wish to write to the resulting array; whether it returns a copy or a view depends on what version of numpy you are using.

我认为在新版本中,试图在上下文中使用np.diag,因为它可能会被指定产生这个错误。尝试:

np.diag(A,1) = 0

这可能会产生同样的错误。在

关于这个问题,我们之前有过一些问题——我们需要找到一个好的。在

{a1}

相关问题 更多 >