在NumPy中創(chuàng)建空數組/矩陣的方法
如何在NumPy中創(chuàng)建空數組/矩陣?
在添加行的情況下,你最好的選擇是創(chuàng)建一個與數據集最終一樣大的數組,然后向它添加數據 row-by-row:
>>> import numpy >>> a = numpy.zeros(shape=(5,2)) >>> a array([[ 0., 0.], [ 0., 0.], [ 0., 0.], [ 0., 0.], [ 0., 0.]]) >>> a[0] = [1,2] >>> a[1] = [2,3] >>> a array([[ 1., 2.], [ 2., 3.], [ 0., 0.], [ 0., 0.], [ 0., 0.]])
NumPy數組與列表是一個非常不同的數據結構,它被設計用于不同的方式。 你對 hstack的使用可能非常低效。 每次調用它時,現有數組中的所有數據都將復制到新數組中。 (append 函數會有同樣的問題。) 如果你想一次構建一個矩陣,最好把它放在一個列表中,直到它完成,然后將它轉換成數組。
mylist = [] for item in data: mylist.append(item) mat = numpy.array(mylist)
item 可以是列表,數組或者任何 iterable,只要每個 item 具有相同數量的元素。
在這種特殊情況下,你可以簡單地使用( data 是一些保存矩陣列的iterable )
mat = numpy.array(data)
(也請注意,使用 list 作為變量名可能不是好做法,因為它通過該名稱屏蔽內置類型,這可能導致 Bug 。)
以上這篇在NumPy中創(chuàng)建空數組/矩陣的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
tensorflow學習筆記之tfrecord文件的生成與讀取
這篇文章主要介紹了tensorflow學習筆記之tfrecord文件的生成與讀取,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03