2017-02-10 6 views
0

나는 조작하고 싶은 그래프의 노드에 관한 4 가지 주 정보가있는 행렬을 만들었으므로이를 배열 배열로 저장하려고합니다. 및 연관 배열이 내 정보 내가 NumPy와와 같은 매트릭스를 만들려면 어떻게해야합니까배열에서 numpy 행렬 - 파이썬

nodes = [[0 for x in range(4)] for y in range(n)] 
for i in range(nodeNumber+1): 
    nodes[i] = info1[i], info2[i] , info[3] , i 

로 행렬 특정 정보

에 반복하도록 명령?

내가 내 '노드'에서 매트릭스를 만들려고했지만 내가 튜플의 배열이 아닌 행렬을 것 같은 NumPy와 그래서 당신이 하나

답변

0
In [114]: n=3 
In [115]: nodes = [[0 for x in range(4)] for y in range(n)] 
In [116]: nodes 
Out[116]: [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]] 

로 표시되지 않는 한 그것은이다 목록

In [117]: for i in range(3): 
    ...:  nodes[i] = 1,2,3,i 
    ...:  
In [118]: nodes 
Out[118]: [(1, 2, 3, 0), (1, 2, 3, 1), (1, 2, 3, 2)] 

이제 튜플 (1,2,3,1)으로 nodes 목록의 각 요소를 교체 한

를 포함하는 목록을 만들었습니다. The는 완전한 대체품입니다. 이 하위 목록은 nodes을 수정하지 않습니다. 자 이제 nodes은 튜플 목록입니다. np.array 통해 그 전달은

In [119]: np.array(nodes) 
Out[119]: 
array([[1, 2, 3, 0], 
     [1, 2, 3, 1], 
     [1, 2, 3, 2]]) 

관계없이 목록 또는 튜플리스트의리스트인지, 2 차원 배열을 생성한다.

서브리스트 또는 튜플의 길이가 다른 경우 dtype 객체의 1 차원 배열을 얻을 수 있습니다.

array of arraysassociative array의 의미에 대해 구체적으로 설명해야합니다.