簡體   English   中英

使用 np.array 將 append 轉化為二維 np.array

[英]Using np.array to append into a 2D np.array

我必須從文件中讀取數據並為我的每個變量(V 和 T)創建一個新的 1D np.array

V = np.array([])
T = np.array([])

for ii in range(len(velocity)):
   if (velocity[ii] !=-9.999999848243207e+30 ) and (velocity[ii] != -9.999999848243207e+30):
      idx.append(ii) # create array with integer x_axis instead of time variable
V = np.append(V, np.array(velocity[idx]))
T = np.append(T, np.array(temperature[idx]))
print(V) # [630.40002441 605.29998779 611.79998779 ... 461.79998779 460.1000061
 466.8999939 ]
print(T) # [132000. 216000. 194000. ...  22100.  19300.  22200.]
# truncated because of large data set

然后我嘗試將這兩個 arrays 組合成一個看起來像np.array([x1,y1],[x2,y2],....)的 2D np.array

finalV = np.array([])
for i in range(len(x_axis)):
    velocity.append(V[i])
    temp.append(T[i])
    finalV = np.append(finalV, [velocity[i], temp[i]], axis = 0)

print(finalV) # [   630.40002441 132000.            605.29998779 ...  19300.
    466.8999939   22200.        ]

如您所見,我對np.arrays()非常陌生。 首先,我的np.array是否應該打印成[x1 x2 x3]而沒有np.array([])並且沒有逗號? 此外,似乎我的 append 循環實際上並沒有遍歷數組並添加每個數組。 我如何 append 獲得格式為[[x1,y1], [x2,y1],...]的二維np.array

我已經使用“列表”完成了它。

finalV = []
for i in range(len(x_axis)):
    finalV.append([V[i],T[i]])
print(finalV)

您可以在 NumPy arrays 上應用相同的概念。

概念:

給append一個列表:

finalV.append([])

到 append 一個數組:

np.append(finalV, np.array(V[i],T[i]), axis=None)

暫無
暫無

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

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