Coo_matrix 和其他矩阵示例

我知道这可能是一个非常广泛的话题,但我想更多地了解它。我的问题是关于 sklearn 的 coo_matrix。

我从文档中阅读并理解它表示稀疏矩阵的坐标矩阵。这里的“坐标”这个词有什么意义吗?

例如,

coo_matrix ((1, 2)) 会得到我

array([[0, 0]])

那么在这个例子中坐标是什么意思呢?或者我们还有其他例子来区分它与其他矩阵吗?如csr_matrix、bsr_matrix等。

同样,如果我问错了问题或者这个问题可以在任何地方找到,请告诉我或提供链接,如果可能的话。

**对于“让我知道”,只要告诉我“你问的问题太简单了”或“你的问题可以在别处找到,做一些研究”应该很好,然后我会按原样删除这篇文章不相干。

对于“共享链接”,请让我知道我可以在哪里学习并了解更多信息。先感谢您。**

提示:根据一些专家的说法,这篇文章被认为是重复的帖子,我得到了一些建议,如果其他人发布的答案可能与未来的读者相关,我可以将其保留在这里,因此,我将其保留。


白衣非少年
浏览 289回答 1
1回答

慕莱坞森

看起来 coo 矩阵只需要一个行列表、一个列列表和一个值(数据)列表(每个列表的大小相同)。重要的是它们的大小与您将通过每个元素获得三元组(行索引、列索引、值)相同。这告诉函数在您正在制作的矩阵的(行索引,列索引)处放置一个值。我很确定它被称为坐标格式,因为您传递了具有关联值的坐标(带有行和列)。我们来做一个简单的例子。row  = np.array([1,3])col  = np.array([2,0])data = np.array([5,11])print(coo_matrix((data, (row, col)), shape=(4, 4)).toarray())查看每个列表的第一个元素:row[0] = 1和col[0] = 2,因此我们将查看(1,2)矩阵中的元素(记住在 python 中,索引从 0 开始)。value[0] = 5,因此该函数将 5 作为(1,2)矩阵中的元素放入。查看每个列表的第二个元素:row[1] = 3和col[1] = 0,因此我们将查看(3,0)矩阵中的元素。value[1] = 11,因此该函数将 11 作为(3,0)矩阵中的元素放入。其余的元素(除了那些被索引的(1,2)和(3,0))然后是 0:输出:[[ 0  0  0  0] [ 0  0  5  0] [ 0  0  0  0] [11  0  0  0]]
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python