Python程式設計之numpy庫函式in1d的使用

2021-08-14 05:33:39 字數 1141 閱讀 3796

最近利用python作數值分析時使用到numpy庫下的in1d函式。in1d函式與excel中vlookup函式和matlab中ismember函式有相似之處。

其作用在於在序列b中尋找與序列a相同的值,並返回一邏輯值(true,false)或邏輯值構成的向量。

具體例子見下文。

設mask為邏輯值向量,矩陣x的第一列為待查詢向量,d為被查詢向量(或值),即查詢x中與d中指定元素相同的值,並返回邏輯值向量mask。mask是由一系列true和false值構成,true代表找到相同的值,而false代表沒找到相同的值。演示如下:

mask= np.in1d(x.values[:,1],d[1],invert=false) 

##x為dataframe型資料,

x.values[:,1]表示取第二列值

x_temp=x[mask]   

該例旨在查詢 x 的第二列值中與d向量中第二個元素相同的部分 ,並返回mask邏輯向量;然後x_temp返回x中mask邏輯值為true的行。mask向量的型別為bool,檢視具體值下圖所示:

值得注意的地方在於in1d函式中invert引數的設定。當invert=true時,mask中的元素值為true的部分對x.values[:,1]中與當前查詢的元素d[i]不同的部分(i為當前查詢位置),相同的部分則為false;當invert=false時,mask中的元素值為true的部分對

x.values[:,1]中與當前查詢的元素d[i]相同的部分(i為當前查詢位置)。演示見下圖:

當mask= np.in1d(x.values[:,1],d[2],invert=true)

當mask= np.in1d(x.values[:,1],d[2],invert=false)時

Python程式設計之numpy庫函式in1d的使用

最近利用python作數值分析時使用到numpy庫下的in1d函式。in1d函式與excel中vlookup函式和matlab中ismember函式有相似之處。其作用在於在序列b中尋找與序列a相同的值,並返回一邏輯值 true,false 或邏輯值構成的向量。具體例子見下文。設mask為邏輯值向量,...

python的numpy庫結構 Numpy庫簡介

今天給大家分享乙個資料分析處理資料的常見的庫 numpy。這個庫是 python 資料分析的基礎,它提供的資料結構比 python 自身的更高效。我們知道 python 有自帶的列表資料結構。numpy 庫和 list 列表有什麼區別呢?python list 列表儲存的是物件的指標,比如 0,1,...

Python資料庫程式設計之索引

二 orm方式建立資料 總結實驗目的 是為了理解index在資料庫的作用,理解index的應用場合 python的sql語句測試 請建立兩個一樣的學生表 學生表1,包含主鍵id 自增,學生id 學生姓名nane,學生成績score 學生表2,包含主鍵id 自增,學生id 學生姓名nane,學生成績s...