Python Numpy 自然數填充陣列

2021-09-10 09:41:53 字數 1080 閱讀 1129

今天學習numpy時,想到了乙個小問題。在numpy中,隨機生成array是比較容易的,用np.random.rand即可。如下

a = np.random.rand(3,4)
可得

array([[ 0.05301444, 0.88175316, 0.01061948, 0.52498083],

[ 0.51335312, 0.60080174, 0.66578974, 0.88035774],

[ 0.16772843, 0.04972805, 0.10598578, 0.54610643]])

(有沒有大神指點一下怎麼樣展示結果比較好,感謝!)

但是我想將一組自然數按順序填充到array裡面,需要怎麼做呢?

在r語言裡比較容易,將array裡的data引數設為所需填充的自然數組成向量(比如(1:12)),再設定行列數即可,在python裡面好像沒有找到類似的函式,np.array與r語言中的array不同,沒有直接在該函式內設定行列的引數。我參考了r語言中的做法,先設定好data,再設定行列,分成兩步來完成。

第一步先生成所需的自然數列a=np.arange(0,55)

通過a.shape可得(55,)

然後將a的shape進行重新分配a.reshape(11,-1) #11是行,-1是自動選擇列

即可得到想要的結果

array([[ 0, 1, 2, 3, 4],

[ 5, 6, 7, 8, 9],

[10, 11, 12, 13, 14],

[15, 16, 17, 18, 19],

[20, 21, 22, 23, 24],

[25, 26, 27, 28, 29],

[30, 31, 32, 33, 34],

[35, 36, 37, 38, 39],

[40, 41, 42, 43, 44],

[45, 46, 47, 48, 49],

[50, 51, 52, 53, 54]])

不知道這樣做對不對,僅僅是我的想法。如果有大神願意指點一下小白,十分感謝!

自然數拆分

描述 description 輸入自然數n,然後將其拆分成由若干數相加的形式,參與加法運算的數可以重複。輸入格式 inputformat 輸入只有乙個整數n,表示待拆分的自然數n。n 80 輸出格式 outputformat 輸出乙個數,即所有方案數 樣例輸入 sampleinput 複製資料 7 ...

自然數拆分

問題描述 自然數的拆分 任何乙個大於1的自然數n,總可以拆分成若干個自然數之和,並且有多種拆分方法。試求 n的所有拆分。例如自然數5,可以有如下一些拆分方法 5 1 1 1 1 1 5 1 1 1 2 5 1 2 2 5 1 4 5 2 3 注意,本題中n拆分出來的數x的範圍是1 x整數劃分可以參考...

自然數拆分

題目 給出sum min max和n四個正整數,請輸出所有將sum拆分為n個遞增的正整數 允許相等 之和,其中每個正整數k都滿足 min k max。在少俠的部落格 看到這道題 就隨手做了下。該題與輸出n個數取m個數的所有組合類似,只不過限定了m個數的和以及取值範圍。可以先用貪心演算法構造乙個最小的...