2
我的問題很簡單:什麼是最有效的(首選)方法在Python中創建一個數組,並逐列填充值?大多數Pythonic(高效率)方法來創建數組來填充它的值
進入我腦海的第一件事就是創建數組空數組(或填充零的數組)並逐步根據列號填充它。
import random
import numpy as np
values = np.zeros([10, 20])
# or values = np.empty([10,20])
for i in range(len(values.T)):
if i == 0:
values[:,i] = 1
elif i < 10:
values[:,i] = random.sample(range(1, 100), 10)
else:
values[:,i] = values[:,i] - values[:,i - 1] * i
編輯:我所用填充柱並不重要,重要這裏最efficent辦法做到這一點。
那麼這顯然取決於你想如何填充矩陣。在這裏,你可以用較少的numpy調用來做到這一點。 –
我想按欄填寫它,因爲一些計算(如示例中所示)取決於前一列的值。 –
但是,這些並不是真的依賴於:第一行由多個組成。接下來的10箇中的9個,最後它將在-10和10之間開始交替。 –