从for循环中的int值创建(n,1)数组

2024-05-14 18:25:27 发布

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

我只想从for a循环中的int值(dist)创建一个(n,1)数组。 现在,我只有一系列的int值,因为我在每次迭代中打印“dist”值。 如何将每个dist合并到一个数组中(在本例中仅为一个n向量),以便array[I][0]是for循环第I次迭代的dist值

我知道这一定很简单,我只是从NumPy开始。我试过使用insert、append,但似乎不起作用。我在开始时初始化的distmatrix未使用

以下是目前的代码:

distmat=np.zeros((len(CoordNodesRad[:,0]),1),int)
lat = CoordNodesRad[:,0]
lng = CoordNodesRad[:,1]
for i in range(len(CoordNodesRad[:,0])):
        dist = distanceGPS(depot[0], depot[1], lat[i], lng[i])
        #print(int(dist))
        #distmat=np.append(distmat,dist,axis=0)
        print(dist)
        distmat=np.insert(dist,i,dist)
print(distmat)

谢谢你的帮助


Tags: forlendistnp数组intinsertprint
1条回答
网友
1楼 · 发布于 2024-05-14 18:25:27

最后,我使用了一个简单的列表,并将我的“dist”值附加到其中。 如果有人比通过列表更快,那么创建数组。。。 这是我的新代码(注释行无关紧要)

disttodepot=[]
lat = CoordNodesRad[:,0]
lng = CoordNodesRad[:,1]
for i in range(len(CoordNodesRad[:,0])):
#    for j in CoordNodesRad:
#   dist = np.append(dist, [[i, j]], axis=0)
        dist = distanceGPS(depot[0], depot[1], lat[i], lng[i])
        #print(int(dist))
        #distmat=np.append(distmat,dist,axis=0)
        #print(dist)
        disttodepot.append(int(dist))
print(disttodepot)

相关问题 更多 >

    热门问题