numpy常用方法

2021-10-03 06:54:08 字數 3270 閱讀 2100

資料的載入

#常用引數

np.loadtext(frame,delimiter,dtype,skiprows,usecols,unpack)

#egfile_path =

""np.loadtext(file_path,delimiter=

",",dtype=

"int"

,skiprows=

0,usecols=(0

,),unpack=ture)

引數

注釋frame

檔案、字串或產生器,可以是.gz或bz2壓縮檔案,可以載入多種檔案型別

delimiter

檔案的分割符,預設是任何空格

dtype

資料型別,預設是np.float

skiprows

跳過幾行

usecols

讀取制定的列,索引,元組型別

unpack

如果是ture,讀入屬性將分別寫入不同陣列變數,false讀入資料只寫入乙個陣列變數,預設false ,起到轉置的作用,轉置的軸是對角線

建立numpy資料物件 (常用)

1.numpy.array()

numpy.array(

object

, dtype =

none

, copy =

true

, order =

none

, subok =

false

, ndmin =0)

#eg

numpy.array([1

,2,3

,4,5

], dtype=

int,copy=

true

,ndmin=

2)

引數

注釋object

陣列或巢狀的佇列

type

陣列元素的資料型別

copy

物件是否可複製

order

建立陣列的方向 c行方向 f列方向 a任意方向,預設a

subok

預設返回乙個與基類型別一致的陣列

ndmin

生成陣列的最小緯度

2.numpy.arange()

numpy.arange(start,stop,step,dtype)

#egnumpy.arange(1,

5,1,dtype=

float

)

引數

注釋start

開始值,預設0

stop

結束值step

步長dtype

資料型別,預設none,元素的原型別

3.numpy.zeros & numpy.ones

numpy.zeros(shape,dtype=

float,order =

'c')

#egnumpy.zeros((2

,2),dtype=

float

,order=

'c')

引數

注釋shape

陣列的形狀,元組,eg:(1,)、(2,3)

dtype

資料型別 ,int ,float

order

是否在儲存器中以c或fortran連續(按行或列方式)儲存多維資料,預設c

常用操作

a = np.array([1

,2,3

,4],

[5,6

,7,8

])#切片和索引a[2

]#選擇行a[2

:,3]

#選擇行是第二行開始到最後一行,列是第3列 a[2

,1:]

#選擇行是第二行,列是從第一列到最後一列a[[

1,2]

,[3,

4]]#選擇(1,3)、(2,4) 兩個列

#布林a[a>10]

#a中大於10的數

#三元運算子

np.where(a>1,

20,10)

#把a中大於1的替換為20,小於1的替換為10

#裁剪a.clip(10,

20)#把小於10的替換為10,大於20的替換為20

#轉置a.t

a.transpose

a.swapaxes(1,

0)#常用統計函式

a.sum

(axis=0)

#按照0軸求和

a.mean(axis=0)

#求均值

a.median(axis=0)

#求中位數

a.max

(axis=0)

#求最大值

a.min

(axis=0)

#求最小值

a.ptp(axis=0)

#就極差

a.std(axis=0)

#標準差

空值處理
#                   判斷空值

a[a.nan != a.nan]

#方法1

a[np.isnan[a]

]#方法2

#完整**

import numpy as np

#需求 把nan替換為每一列均值

#資料準備

nump = np.arange(20)

.reshape(4,

5).astype(

'float'

)#把(1,3)、(2,4) 置為空值

nump[[1

,2],

[3,4

]]= np.nan

#遍歷每一列 判斷是否存在nan,存在就計算均值,然後賦值

for i in

range

(nump.shape[1]

):temp_col = nump[

:,i]

#當前列

num = np.count_nonzero(temp_col != temp_col)

#統計nan的個數

if num !=0:

#有空值

temp_mean = temp_col[temp_col == temp_col]

.mean(

)#不為均值

temp_col[temp_col != temp_col]

= temp_mean #替換

numpy的常用方法

進行操作前首先匯入numpy模組 import numpy as npdata np.arange 12 reshape 3,4 data 0,0 80 print data 1.獲取最大值和最小值的位置 獲取當前陣列裡面最大值的索引 max item1 np.argmax data print m...

numpy 常用方法總結

記錄使用numpy過程中常用的方法。不斷更新 官方文件 import numpy as np a np.array 0,1 2,3 4,5 numpy.arange start,stop,step,dtype none 返回給定間隔內的均勻間隔的值。start 開始值 stop 結束值 step 步...

numpy 其它常用方法

一 建立特殊的陣列 1 ones 語法np.ones shape,dtype none shape 建立陣列的shape dtype 指定陣列的資料型別 例子import numpy as np arr1 np.ones 3,4 dtype int64 print arr1 print arr1.d...