我是NumPy/SciPy的新手。從文檔看來,預先分配單個數組而不是調用append/insert/concatenate可以更有效地分配 。什麼是預先分配NumPy數組的首選方法?
例如,要加1點的到一個陣列的列,我認爲這樣:
ar0 = np.linspace(10, 20, 16).reshape(4, 4)
ar0[:,-1] = np.ones_like(ar0[:,0])
優選這樣的:
ar0 = np.linspace(10, 20, 12).reshape(4, 3)
ar0 = np.insert(ar0, ar0.shape[1], np.ones_like(ar0[:,0]), axis=1)
我的第一個問題是,這是否是正確的(第一個是更好的),而我的第二個問題是,此刻,我只是預先分配了我的陣列(我在SciPy站點的幾個Cookbook示例中注意到):
np.zeros((8,5))
什麼是'NumPy首選'的方式來做到這一點?