Python擴充套件包

2022-07-25 12:00:17 字數 3860 閱讀 5809

numpy提供了多種python本身不支援的多種集合,有list、ndarray和ufunc。

1.1 構造陣列

import numpy as np 

# 一維陣列

arr = np.array([2,0,1,5,8,3], dtype=np.float64)

# 二維陣列

arr = np.array([[1, 2, 3, 4], [4, 5, 6, 7], [7, 8, 9, 10]], dtype=np.float64)

1.2 max函式
# 提取陣列最大值

arr.max()

1.3 min
arr.min()
1.4 sort
arr.sort()
1.5 陣列形狀
# 屬性

arr.shape

# 內建函式

type(a)

1.6 切片

切片本質上就是去陣列的子集。

# 全部元素

arr[:]

# 開始至導數第二個元素

arr[:-2]

# 最後的兩個元素

arr[-2:]

# 第乙個元素

arr[:1]

# 二維陣列切片

arr[:][:]

# arr[1][:-2]

1.7 數學函式

numpy封裝了很多數學函式。

1.8 陣列與標量值計算

同型陣列相乘就是對應元素相乘

arr1 = np.array([[1,2,3],[4,5,6]])

arr2 = arr1 * arr1

# 結果

[ [1,4,9] ,

[16,25,36]

]

同型陣列相減對應元素相減

arr1 = np.array([[1,2,3],[4,5,6]])

arr2 = arr1 - arr1

# 結果

[ [0,0,0] ,

[0,0,0]

]

陣列的倒數對應每個元素的倒數

arr1 = np.array([[1,2,3],[4,5,6]])

arr2 = 1 / arr1

# 結果

[ [1,0.5,0.33333] ,

[0.25,0.2,0.166666]

]

1.9 布林索引

# 名稱陣列

names = np.array(['bob','joe','bob','joe'])

names == 'bob'

# 結果

array([ true, false, true, false])

1.10 隨機數組
# 隨機數組

arr = np.random.randn(4,4)

# 結果

array([[-0.63024369, -0.46411696, 0.39215462, -1.59666929],

[-0.66560699, -0.39085017, 1.44804687, -0.32239144],

[-0.23065156, -2.05660209, -0.59777198, 0.36496691],

[-2.21541391, 1.61258062, -0.43754217, -0.58834426]])

# 同布林型陣列組合

arr[names=='bob']

array([[-0.63024369, -0.46411696, 0.39215462, -1.59666929],

[-0.23065156, -2.05660209, -0.59777198, 0.36496691]])

1.11 空陣列

空陣列賦值,是對每個元素都進行賦值。

# 空陣列,裡面沒有任何內容

arr = np.empty((5,4))

for i in range(5):

arr[i] = i

# 結果

array([[0., 0., 0., 0.],

[1., 1., 1., 1.],

[2., 2., 2., 2.],

[3., 3., 3., 3.],

[4., 4., 4., 4.]])

1.12 通用函式

np.arange

arr = np.arange(10)

# 結果

array([1,2,3,4,5,6,7,8,9])

np.sqrt

np.sqrt(array([1,4,9]))

# 結果

array([1,2,3])

np.random.randn(8)

arr = np.random.randn(8)

# 結果

array([ 0.67089833, 0.29382861, 0.83511179, -0.44452724, 0.12621945,

-0.7167797 , -0.42452128, -0.63488661])

np.maximum(a,b)

x = np.array([1,2,3])

y = np.array([5,0,5])

np.maximum(x,y

# 結果

array([5, 2, 5])

一元函式

函式解釋

abs絕對值

exp指數

ceil

ceil

floor

floor

cos、sin、cosh、sinh

普通型和雙曲型三角函式

arccos

反余弦arcsin

反正弦二元函式

函式解釋

addmultiply

divide、floor_divide

pandas 是panel data的之意。它是python最強大的資料分析和探索工具,因金融資料分析工具而開發,支援類似sql的資料增刪改查功能,支援時間序列分析,靈活處理缺失資料。pandas有兩種資料型別,series和dataframe。

2.1 series

series是一列資料,相當於**中的一列。

s1 = series([1,2,3,4])

# key是索引列

s1 = series()

# 所有值

s1.values

# 所有索引

s1.index

# 通過索引訪問

s1['b']

2.2 dataframe

資料框是二維**,類似於關係型資料庫中的表。

# 構造資料

data =

# 資料全部列

df1 = dataframe(data)

# 使用指定的列

pds=pd.dataframe(data,columns=['name','price','marks'])

資料框結構如下:

name

marks

price

yahoo

2009

google

4003

facebook

8007

Python擴充套件包之shutil

os模組 提供了對目錄或者檔案的新建 刪除 檢視檔案屬性,還提供了對檔案以及目錄的路徑操作。比如說 絕對路徑,父目錄 但是,os檔案的操作還應該包含 移動 複製 打包 壓縮 解壓 等操作,這些os模組都沒有提供。shutil提供了 移動 複製 打包 壓縮 解壓等功能。1 shutil.copyfil...

Python之擴充套件包安裝

讀者朋友,在比較新的版本 python 2 2.7.9 or python 3 3.4 中,pip或者easy install 擴充套件包命令已經預設安裝 可檢視 你的安裝目錄 python 你的版本號 scripts 不需要額外手動安裝,只需把安裝命令加入到環境變數即可。1 以scikit lea...

Python擴充套件包numpy mkl的手動安裝步驟

命令列視窗cmd進入指定目錄的方法 比如要進入d python36 scripts資料夾,先輸入d 進入d磁碟,然後再輸入cd python36 scripts即可,cd不區分大小寫,也可以用tab鍵快速選擇資料夾 cmd輸入命令 pip installpakage pakage為擴充套件包的名稱 ...