day2 陣列建立和屬性(Numpy的簡單運用)

2021-10-06 08:54:37 字數 2099 閱讀 9851

*本文章需要用到numpy第三方庫,jupyter notebook自帶

筆記:常用的陣列建立函式:array, arange, linspace, logspace, zeros, ones, eye, diags

常用的屬性:ndim, shape, size, dtype運算

可以用array建立任意維陣列

import numpy as np

arr1 = np.array([[

1,2,

3,4]

,[5,

6,7,

8],[

9,10,

11,12]

])

用巢狀就建立了乙個二維陣列。當然,你可以新增dtype引數轉換陣列資料的型別:

import numpy as np

arr2 = np.array([1

,2,3

,4], dtype =

'str'

)# 將資料轉換為字元

arr3 = np.array([5

,6,7

,8], dtype =

'float'

)# 將資料轉換為浮點數

可以用arange建立等差數列:

import numpy as np

arr4 = np.arange(1,

10,0.5)

這樣就建立了乙個起始值1、終止值10(不會顯示在數列內)、步長0.5的等差數列。

還可以用linspace建立等差數列:

import numpy as  np

arr5 = np.linspace(1,

10,10, endpoint =

true

, dtype =

none

)

這樣就建立了乙個初始值1、終止值10的十元等差數列。endpoint預設為true,當endpoint = false時自動捨去終止值。dtype = none也是預設,所以dtype和endpoint一樣,不需要指定的時候省略即可。

用logspace建立等比數列:

import numpy as np

arr6 = np.logspace(1,

2,10, endpoint=

true

, base=

10.0

, dtype=

none

)

這樣就生成了從101到102的十元等比數列。

用zeros建立零矩陣/全零一維陣列:

import numpy as np

zrs1 = np.zeros([4

,5])

zrs2 = np.zeros(

6)

其中第乙個生成的是4x5二維零矩陣,第二個是生成包含6個0的一維陣列。

用ones建立全為1的二維矩陣、一維陣列:方法和zeros相同,故不再贅述。

用eye建立單位矩陣:方法同zeros建立一維陣列相同(因為單位矩陣必然是行數 = 列數的矩陣,所以只需要傳入乙個引數),也不再贅述。

用diag建立對角矩陣:

import numpy as np

diag1 = np.diag([4

,5,8

])

這樣就輸出了特徵值是4、5、8的對角矩陣。

在python中對矩陣/一維陣列做加法,是預設對其中的每乙個元素做加法:

diag2 = diag1 +

1

輸出的diag2是

array([[

5,1,

1],[

1,6,

1],[

1,1,

9]])

這樣就不用用迴圈的方式來做加法了。

shape用於檢視陣列的行列數,ndim用於檢視陣列的維度,size用於檢視陣列的元素格式,dtype用於檢視元素型別,方法比較簡單不做一一贅述。

Django筆記 day 2 建立模型

建立表單 models 可提供多種字段 定義部落格型別類,繼承model基類 from django.db import models from django.contrib.auth.models import user class blogtype models.model 部落格型別 mode...

day2 檔案的建立,讀取,寫入

一 檔案的建立讀取寫法 1 f open user list.txt r encoding utf 8 開啟建立檔案,檔案控制代碼 路徑 大小 字符集等 2 f.write 資料寫入成功!寫入資料表示式 3 data f.read 讀取資料 4print data 列印資料 5 f.close 關閉...

Ruby基礎教程(Day2) 陣列和雜湊初始

像陣列 雜湊這樣儲存物件的物件,我們稱為容器陣列 在儲存物件時,如果指定了陣列中不存在的索引值,則陣列的大小會隨之改變。ruby中陣列的大小是按實際情況自動調整的。陣列的元素 陣列的大小 陣列的迴圈 陣列 each do 變數 希望迴圈的處理 end雜湊 雜湊的使用 雜湊的迴圈 雜湊的 each 語...