ノードのデータをCSV形式で取得しています。私は分析のための辞書を作りたいと思う。私が持っているデータPythonを使用してネストされた辞書を作成する
Init node Term node Capacity
1 2 25900.20064
1 3 23403.47319
2 1 25900.20064
2 6 4958.180928
3 1 23403.47319
3 4 17110.52372
3 12 23403.47319
4 3 17110.52372
4 5 17782.7941
したがって、あるノードはある容量を持つ他のノードに接続されています。だから、私はこの
graph = {'1': {'2': 25900.20064, '3': 23403.47319},
'2': {'1': 25900.20064, '6':4958.180928},
'3': {'1': 23403.47319, '4'}}
のようなデータを作成するPythonにおける辞書は、私が
import xlrd
file_location = "C:/Users/12/Desktop/SiouxFalls_net1.xlsx"
workbook = xlrd.open_workbook(file_location)
sheet = workbook.sheet_by_index(0)
dict = {}
z = {}
for rows in range(sheet.nrows):
a = sheet.cell_value(rows,0)
dict[a] = {}
for rows in range(sheet.nrows):
b = sheet.cell_value(rows,1)
c = sheet.cell_value(rows, 2)
dict[a][b] = c
。これを行うには、次のコードを試してみました。しかし、私は最初から一意の値を拾っでトラブルを抱えていたいですそれにリンクされた他のノードのデータを割り当てます。助けてください!
print(dict)
変数の名前を変更する必要があるように、 'dict'は、タイプに建てられています。また、2番目のforループのインデントをチェックすることもできますか?私は、コピー貼り付けが2番目のループのインデントを台無しにしている可能性があると思う。 – rlee827
はい、字下げはここでは正しくありませんが、正しい辞書が得られません。私はちょうどそれがフォーマットで作成することが可能かどうかを知りたいのです –