簡體   English   中英

字典中的稀疏矩陣

[英]sparse matrix from dictionaries

我剛開始學習在 Python 中編程,我正在嘗試使用 Scipy package 構造一個稀疏矩陣。 我發現有不同類型的稀疏矩陣,但它們都需要使用行、列、數據等三個向量來存儲; 或者,如果您想分別輸入每個新條目,例如 S(i,j) = s_ij,您需要以給定的大小啟動矩陣。
我的問題是,是否有一種方法可以在不需要初始大小的情況下逐項存儲矩陣,例如字典。

您可以使用帶有兩個整數的元組作為索引的常用字典。 例如:

matrix = {}
matrix[5, 7] = 1
matrix[3, 8] = 5

不可以。Scipy 中的任何矩陣,無論是否稀疏,都必須使用大小進行實例化。

dic={}
a,b=int(input("Enter the order:")),int(input())
for i in range(a):
    for j in range(b):
        c=int(input())
        if c!=0:
            dic[(i,j)]=c
if len(dic)<=(a+b)/2:
    print("sparse metrix")
else:
    print("non sparse metrix")

for i in range(a):
    for j in range(b):
        print(dic.get((i,j),0),end=" ")
    print()    

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM