亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

使用numpy.ndarray添加元素

 更新時間:2022年05月23日 10:17:59   作者:聰小聰i  
這篇文章主要介紹了使用numpy.ndarray添加元素,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

numpy.ndarray添加元素

平常使用的比較多的是list,在list后面添加元素直接是

data_list = []
data_list.append(0)

就可以了。

但是在上次使用這個用法時,報錯numpy.adarray沒有append這個屬性,因此發(fā)現(xiàn)data_list這個變量不是一個list,而是numpy.ndarray類型的,因此改為:

np.append(data_list, 0)

但是這樣改完之后會發(fā)現(xiàn)data_list的值并沒有發(fā)生改變,因此,我改為

data_list = np.append(data_list, 0)

然后由于添加了一個元素,他會告訴你,等號右邊是x+1維,左邊是x維,不能賦值,然后改為:

new_list = np.append(data_list, 0)

定義了一個新變量new_list用于保存添加完元素的值,后面再接著使用new_list進行操作就可以了。

Numpy:數(shù)組(Ndarray)之元素添加、刪除和修改

數(shù)組也是一個可變類型,可以對數(shù)組中的元素進行添加、刪除和修改,本文詳細介紹了對數(shù)組元素的添加和刪除的操作,以及這兩種操作的方法均已列出。數(shù)組元素的修改操作簡單,只要對索引和切片掌握,使用索引和切片獲取到元素后賦值就可以實現(xiàn)。

添加元素

方法說明
numpy.append()數(shù)組追加元素
numpy.insert()數(shù)組插入元素

numpy.append()

在數(shù)組末尾追加元素。

numpy.append(arr, values, axis=None)

參數(shù)說明:

  • arr:接收array_like,需要添加元素的數(shù)組。
  • values:接收array_like,追加到末尾的元素,形狀必須匹配。arr和values的維度必須相等才能追加
  • axis:接收int,如果未給定軸,則arr和values在使用前都會被展平。

返回值:

  • ndarray,arr的副本。

示例:

# 創(chuàng)建數(shù)組a
>>> a = np.arange(1,7).reshape(2,3)
>>> a
array([[1, 2, 3],
? ? ? ?[4, 5, 6]])
# 創(chuàng)建數(shù)組b ? ? ??
>>> b = np.arange(7,10).reshape(1,3) # a,b維度相同才能追加
>>> b ?
array([[7, 8, 9]])?

注意:數(shù)組(arr)和追加值(values)的維度必須相同才可以追擊,否則會報錯:

ValueError: all the input arrays must have same number of dimensions, but the array at index 0 has 2 dimension(s) and the array at index 1 has 1 dimension(s)

不指定軸向時,生成副本,將數(shù)組a,b都展平后進行追加。

# 將數(shù)組b追加到數(shù)組a后
>>> np.append(a, values=b) # 不指定axis時
array([ 1, ?2, ?3, ?4, ?5, ?6, ?7, ?8, ?9])?

指定軸向時,根據(jù)軸向追加,但是形狀必須匹配,指定軸向為行追加時列數(shù)必須相等,指定軸向為列追加時,行數(shù)必須相等。

>>> np.append(a, values=b, axis=0) # 根據(jù)行追加
array([[ 1, ?2, ?3],
? ? ? ?[ 4, ?5, ?6],
? ? ? ?[ 7, ?8, ?9]])

指定軸向時,指定軸向為列時,行數(shù)不相同,形狀不匹配,無法追加,會報ValueError錯!

>>> np.append(a, values=b, axis=1)
ValueError: all the input array dimensions for the concatenation axis must match exactly, but along dimension 0, the array at index 0 has size 2 and the array at index 1 has size 1

numpy.insert()

給定的軸向和指定的索引位置插入值。

numpy.insert(arr, obj, values, axis=None)

參數(shù)說明:

  • arr:接收array_like,輸入的數(shù)組。
  • obj:接收整數(shù)或者整數(shù)序列,索引位置。
  • values:接收array_like,需要插入數(shù)組的值,需要考慮形狀。
  • axis:接收整數(shù),軸向。如果未給定軸向數(shù)組會被展平。

返回值:

  • ndarray,插入值后的副本。

示例:

>>> a = np.arange(1,7).reshape(2,3)
>>> a
array([[1, 2, 3],
? ? ? ?[4, 5, 6]])
>>> b = np.ones(shape=(2,1))
>>> b
array([[1.],
? ? ? ?[1.]])
? ? ? ?
# 向數(shù)組a的行方向,索引為2的行插入數(shù)組b,會自動補全
>>> np.insert(a, 2, b, axis=0)
array([[1, 2, 3],
? ? ? ?[4, 5, 6],
? ? ? ?[1, 1, 1],
? ? ? ?[1, 1, 1]])
? ? ? ?
# 向數(shù)組a的列方向,索引為2的列插入數(shù)組b
>>> np.insert(a, 2, b, axis=1)
array([[1, 2, 1, 1, 3],
? ? ? ?[4, 5, 1, 1, 6]])

刪除元素

方法說明
numpy.delete()刪掉某個軸的子數(shù)組,并返回刪除后的新數(shù)組

numpy.delete()

返回一個沿軸刪除了子數(shù)組的新數(shù)組。

返回一個沿軸刪除了子數(shù)組的新數(shù)組。

numpy.delete(arr, obj, axis=None)

參數(shù)說明:

  • arr:接收array_like,輸入數(shù)組。
  • obj:接收索引、切片,或者整數(shù)構(gòu)成的數(shù)組。
  • axis:接收整數(shù),軸向

返回值:

  • ndarray,刪除元素后的數(shù)組,是副本。

示例:

>>> a = np.arange(1,7).reshape(2,3)
>>> a
array([[1, 2, 3],
? ? ? ?[4, 5, 6]])
# 軸向為列,刪除索引為2的列 ? ? ?
>>> np.delete(a, 2, axis=1) ? ? ?
array([[1, 2],
? ? ? ?[4, 5]])

對數(shù)據(jù)進行操作時形狀非常重要,如果形狀不匹配會引發(fā)報錯,需要對報錯的類型了解,才能在出問題后及時找到原因。除此以外,軸向也是非常重要的,二維數(shù)組中:axis=0表示行,axis=1表示列,這個概念非常容易混淆。

元素修改

使用索引切片獲取到該位置的元素后使用"="為該位置重新賦值即可。

語法:數(shù)組名[索引]=值 或 數(shù)組名[切片]=值

示例:

>>> a = np.arange(1,7).reshape(2,3)
>>> a
array([[1, 2, 3],
       [4, 5, 6]])
       
# 使用索引獲取到該位置后重新賦值即可修改元素       
>>> a[0, 1] = 100
>>> a
array([[ 1, 100, 3],
       [ 4,  5,  6]])     

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Python實現(xiàn)批量下載ts文件并合并為mp4

    Python實現(xiàn)批量下載ts文件并合并為mp4

    這篇文章主要為大家詳細介紹了如何通過Python語言實現(xiàn)批量下載ts文件并合并為mp4視頻的功能,文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下
    2023-06-06
  • Python實現(xiàn)的直接插入排序算法示例

    Python實現(xiàn)的直接插入排序算法示例

    這篇文章主要介紹了Python實現(xiàn)的直接插入排序算法,結(jié)合實例形式分析了Python直接插入排序算法的定義與使用相關操作技巧,代碼備有較為詳盡的注釋便于理解,需要的朋友可以參考下
    2018-04-04
  • 詳解python的運算符與表達式

    詳解python的運算符與表達式

    這篇文章主要為大家介紹了python的運算符與表達式,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01
  • Python裝飾器的執(zhí)行過程實例分析

    Python裝飾器的執(zhí)行過程實例分析

    這篇文章主要介紹了Python裝飾器的執(zhí)行過程,結(jié)合實例形式分析了Python裝飾器的原理、執(zhí)行過程及相關操作注意事項,需要的朋友可以參考下
    2018-06-06
  • Python 語句的表達式和縮進

    Python 語句的表達式和縮進

    本篇文章將會使大家了解Python 語句、表達式以及它們之間的區(qū)別。還包含幾個示例來更清楚地解釋這個概念。接下來,我們將解釋如何在 Python 編程中使用多行語句和縮進,需要的朋友可以參考一下
    2021-09-09
  • 15個短代碼示例理解python豐富的編程思維

    15個短代碼示例理解python豐富的編程思維

    這篇文章主要為大家介紹了python豐富的編程思維,文中通過python的幾行短代碼示例來給大家進行詳細的講解,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2021-11-11
  • Django如何使用第三方服務發(fā)送電子郵件

    Django如何使用第三方服務發(fā)送電子郵件

    這篇文章主要介紹了Django如何使用第三方服務發(fā)送電子郵件,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-08-08
  • python線程、進程和協(xié)程詳解

    python線程、進程和協(xié)程詳解

    Python被人詬病最多的大概就是性能差,在這里講一下 Python 的多進程,多線程與協(xié)程。首先聲明這不是教程,看完這篇文章,大概能夠?qū)?Python 的多進程與多線程有一定的了解。
    2016-07-07
  • Python變量和數(shù)據(jù)類型和數(shù)據(jù)類型的轉(zhuǎn)換

    Python變量和數(shù)據(jù)類型和數(shù)據(jù)類型的轉(zhuǎn)換

    這篇文章主要介紹了Python變量和數(shù)據(jù)類型和數(shù)據(jù)類型的轉(zhuǎn)換,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • Python基于scipy實現(xiàn)信號濾波功能

    Python基于scipy實現(xiàn)信號濾波功能

    本文將以實戰(zhàn)的形式基于scipy模塊使用Python實現(xiàn)簡單濾波處理。這篇文章主要介紹了Python基于scipy實現(xiàn)信號濾波功能,需要的朋友可以參考下
    2019-05-05

最新評論